Anda di halaman 1dari 126

PENGEMBANGAN SISTEM APLIKASI TRANSAKSI BANK

SAMPAH ONLINE BERBASIS WEB


(Studi Kasus : Bank Sampah Malang)

SKRIPSI
Untuk memenuhi sebagian persyaratan
memperoleh gelar Sarjana Komputer

Disusun oleh:
Meylisa Dwiyati Marali
NIM: 145150200111179

PROGRAM STUDI TEKNIK INFORMATIKA


JURUSAN TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
MALANG

2018
PENGESAHAN

PENGEMBANGAN SISTEM APLIKASI TRANSAKSI BANK SAMPAH ONLINE BERBASIS


WEB (STUDI KASUS : BANK SAMPAH MALANG)

SKRIPSI

Diajukan untuk memenuhi sebagian persyaratan


memperoleh gelar Sarjana Komputer

Disusun Oleh :
Meylisa Dwiyati Marali
NIM: 145150200111179

Skripsi ini telah diuji dan dinyatakan lulus pada


16 Juli 2018
Telah diperiksa dan disetujui oleh:

Dosen Pembimbing I Dosen Pembimbing 2

Fajar Pradana, S.ST, M.Eng Bayu Priyambadha, S.Kom, M.Kom


NIP. 19871121 201504 1 004 NIP. 198209092008121004

Mengetahui
Ketua Jurusan Teknik Informatika

Tri Astoto Kurniawan, S.T, M.T, Ph.D


NIP. 19710518 200312 1 001

ii
PERNYATAAN ORISINALITAS

Saya menyatakan dengan sebenar-benarnya bahwa sepanjang pengetahuan


saya, di dalam naskah skripsi ini tidak terdapat karya ilmiah yang pernah diajukan
oleh orang lain untuk memperoleh gelar akademik di suatu perguruan tinggi, dan
tidak terdapat karya atau pendapat yang pernah ditulis atau diterbitkan oleh orang
lain, kecuali yang secara tertulis disitasi dalam naskah ini dan disebutkan dalam
daftar pustaka.
Apabila ternyata didalam naskah skripsi ini dapat dibuktikan terdapat unsur-
unsur plagiasi, saya bersedia skripsi ini digugurkan dan gelar akademik yang telah
saya peroleh (sarjana) dibatalkan, serta diproses sesuai dengan peraturan
perundang-undangan yang berlaku (UU No. 20 Tahun 2003, Pasal 25 ayat 2 dan
Pasal 70).

Malang, 23 Juli 2018

Meylisa Dwiyati Marali


NIM: 145150200111179

iii
KATA PENGANTAR

Assalamu’alaikum Warrahmatullahi Wabarakatuh. Alhamdulillahi


Rabbil’Alamin. Puji Syukur penulis panjatkan kehadirat Allah SWT, karena atas
berkah, ramhat, serta hidayah-Nya penulis dapat menyelesaikan Skripsi yang
berjudul “Perancangan Sistem Aplikasi Transaksi Bank Sampah Online Berbasis
Web (Studi Kasus : Bank Sampah Malang)” dengan baik.
Pada kesempatan ini, penulis menyampaikan rasa terima kasih kepada pihak-
pihak yang telah membantu penulis selama proses penyusunan skripsi,
diantaranya :
1. Allah SWT yang telah memberi kemudahan dalam semua proses penulisan
skripsi ini.
2. Kepada kedua orang tua dan adik kakak saya yang selalu mendukung saya
serta tidak henti-hetinnya memberikan doa kepada saya.
3. Bapak Fajar Pradana, S.ST, M.Eng selaku dosen pembimbing I, yang telah
meluangkan waktu untuk memberikan ilmu serta saran dalam proses
penyusunan skripsi ini.
4. Bapak Bayu Priyambadha, S.Kom, M.Kom selaku dosen pembimbing II,
yang juga telah meluangkan waktu untuk memberikan ilmu serta saran
dalam proses penyusunan skripsi ini.
5. Ibu Kartika Sari selaku Direktur Bank Sampah Malang beserta kelurga besar
Bank Sampah Malang yang telah mendukung serta memberikan ilmu yang
berharga dalam proses penyusunan skripsi ini.
6. Saudara Armansyah yang telah memberikan semangat, membantu, serta
menemani dalam proses pengerjaan skripsi ini.
7. Para sahabat tercinta dari Cew-cew Strong, Nadya, Tuti, Irin, Shindy, dan
Ala yang selalu memberikan semangat serta memberi dukungan dalam
proses penyusunan skripsi ini.
8. Keluarga Sosma dan Kabinet SukmaKarya BEM FILKOM 2017/2018 yang
selalu menghibur dan memberikan semangat yang sangat berarti selama
proses penyusunan skripsi ini.
9. Keluarga LTIFAM dan kerabat RPL yang telah memberikan ilmu-ilmu yang
sangat berharga dan cerita-cerita yang menghibur dan memberikan
semangat dalam proses penyelesaian skripsi ini.
10. Teman-teman SMA Negeri 2 Balikpapan, Indah, Karin, Stefani, Wahyu, Ira,
dan Feni, yang telah menemani dan memberikan cerita-cerita menghibur
dalam menyelingi proses pengerjaan skripsi.
11. Kerabat Maktin,S.Kom, Tuti, Ali, Caraka, Aat, Andry, Fikri, dan Masagus,
yang telah memberikan cerita-cerita berharga, hiburan, dan motivasi
dalam menyusun skripsi.

iv
12. Seluruh teman-teman Fakultas Ilmu Komputer yang telah memberikan
bantuan serta ilmu yang berharga, dan seluruh dukungannya selama
proses penyusunan skripsi ini.
13. Seluruh pihak yang tidak dapat disebutkan satu per satu dan telah
membantu selama proses penyusunan skripsi ini.
Semoga seluruh jasa dan bantuannya mendapatkan balasan dari Allah SWT.
Penulis menyadari dalam penyusunan skripsi ini masih banyak ditemukan
kekurangan, semoga skripsi ini dapat bermanfaat baik untuk pembaca dan
pengembangan penelitian selanjutnya. Oleh karena itu, segala bentuk saran dan
kritikan yang bersifat membangun skripsi ini dapat disampaikan melalui email
penulis.

Malang, 23 Juli 2018

Penulis
meylisadmarali@gmail.com

v
ABSTRAK

Meylisa Dwiyati Marali, Perancangan Sistem Aplikasi Transaksi Bank Sampah


Online Berbasis Web
Dosen Pembimbing: Fajar Pradana dan Bayu Priambadha
Bank sampah Malang (BSM) merupakan lembaga yang berfokus pada
pengumpulan dan pengolahan sampah yang dihasilkan dari kegiatan manusia
sekitar wilayah Malang. Salah satu kegiatan dari pengelolaan sampah adalah
tabungan sampah layak jual. Dari proses transaksi tabungan sampah, ditemukan
beberapa masalah yang dirasakan oleh petugas dan nasabah BSM. Permasalahan
pertama dari sisi Petugas BSM, yaitu dibutuhkannya sarana untuk mengenalkan
BSM kepada masyarakat kota Malang serta kesulitan petugas dalam mencari
lokasi nasabah yang melakukan layanan jemput sampah. permasalahan kedua
dirasakan oleh nasabah yang melakukan transaksi jemput sampah, buku tabungan
nasabah akan dibawa petugas saat melakukan transaksi jemput sampah
selanjutnya akan dilakukan pengecekan oleh teller BSM, hal yang dianggap
merepotkan nasabah yaitu mewajibkan nasabah untuk mengambil buku tabungan
di kantor BSM dikemudian hari dan tidak dapat mengetahui rekapan transaksi
secara terkini Dari permasalah tersebut, maka dilakukanlah pengembangan
aplikasi sistem transaksi bank sampah online yang dapat menyelesaikan
permasalahan dari nasabah dan petugas BSM. Proses pengembangan perangkat
lunak pada penelitian ini dilakukan dengan menggunakan metode Waterfall.
Tahapan yang dilakukan pada penelitian ini adalah studi literatur, analisis
kebutuhan, perancangan sistem, implementasi, pengujian, dan pengambilan
keputusan dan saran. Sistem ini dikembangkan dengan berbasis web dan
menggunakan bahasa pemrograman PHP. Dalam membaca dan menentukan
lokasi penjemputan digunakan fitur pada Google Maps API. Pengujian unit
dilakukan dengan menggunakan metode white box testing dan hasilnya
menujukan nilai 100% valid dari 3 kasus uji. Pengujian Validasi dilakukan
menggunakan metode black box testing dan hasilnya 100% valid dari 32 kasus uji.
Tes Kompabilitas juga dilakukan dengan hasil 100% valid dari 3 kasus uji.

Kata Kunci : Bank Sampah Malang (BSM), pengembangan perangkat lunak,


Waterfall, PHP, Google Maps API, White box testing, Black box testing,
Compatibility testing

vi
ABSTRACT

Meylisa Dwiyati Marali, Perancangan Sistem Aplikasi Transaksi Bank Sampah


Online Berbasis Web
Supervisors : Fajar Pradana dan Bayu Priambadha
Bank Sampah Malang (BSM) is a foundation with focus in collecting and
processing waste from activities revolve around Malang. One of the activities in
BSM included making savings from the waste that still can be sold. From the
transaction, there are several problems felt by both the officers and customers of
BSM. First problem is the officers of BSM need a medium to introduce BSM to
society, especially in Malang. They also found it is hard to locate the customers
that used a ‘pick-up waste’ service. Second problem from the customer used the
‘pick-up waste’ service, in which, the system used is troublesome. Their saving
books have to be brought by the officer to be checked by teller, and they have to
pick their saving books in BSM office next day. The purpose of this research is to
help BSM to create a web-based online transaction to help solving the problem
stated above. The software development in this research is done by using Waterfall
method. Stages performed in this research include literature research, analysis of
user needs, System Design, implementation, testing, and decision making. This
system is developed in web-based environment and the programming language
used is PHP. Google Maps API is used to read and locate the pick-up location. Unit
testing use white box method and the result is 100% valid in 3 testing cases. The
validation testing use black box method and the result is 100% valid from 32 testing
cases. Compatibility’s testing result also shown 100% valid from 3 testing cases.

Keywords: Malang waste bank (BSM), software development, waterfall, PHP,


Google Maps API, Compatibility testing

vii
DAFTAR ISI

PERANCANGAN SISTEM APLIKASI TRANSAKSI BANK SAMPAH ONLINE BERBASIS


WEB ...........................................................................................................................i
PENGESAHAN ...........................................................................................................ii
PERNYATAAN ORISINALITAS ................................................................................... iii
KATA PENGANTAR ................................................................................................... iv
ABSTRAK .................................................................................................................. vi
ABSTRACT ............................................................................................................... vii
DAFTAR ISI ............................................................................................................. viii
DAFTAR GAMBAR .................................................................................................. xiii
DAFTAR TABEL ....................................................................................................... xiv
BAB 1 PENDAHULUAN............................................................................................. 1
1.1 Latar belakang.........................................................................................1
1.2 Rumusan masalah ...................................................................................3
1.3 Tujuan .....................................................................................................3
1.4 Manfaat...................................................................................................4
1.5 Batasan masalah .....................................................................................4
1.6 Sistematika pembahasan ........................................................................4
BAB 2 LANDASAN KEPUSTAKAAN ........................................................................... 6
2.1 Kajian Pustaka .........................................................................................6
2.2 Bank Sampah Malang .............................................................................7
2.3 Sistem......................................................................................................8
2.4 PHP ..........................................................................................................8
2.5 HTML (Hyper Text Markup Language)....................................................8
2.6 Javascript.................................................................................................9
2.7 MySQL .....................................................................................................9
2.8 SDLC (System Development Life Cycle) ...................................................9
2.8.1 Metode Waterfall........................................................................ 10
2.9 UML (Unified Modelling Language) ......................................................11
2.9.1 Use Case Diagram........................................................................ 11
2.9.2 Sequence Diagram ....................................................................... 12
2.9.3 Class Diagram .............................................................................. 13

viii
2.10 MVC (Model View Controller) .............................................................13
2.11 Codeigniter..........................................................................................13
2.12 Pengujian Perangkat Lunak ................................................................14
2.12.1 White box Testing ..................................................................... 14
2.12.2 Black box Testing....................................................................... 14
2.13 Google Maps API.................................................................................15
BAB 3 METODOLOGI PENELITIAN ......................................................................... 16
3.1 Studi Literatur .......................................................................................17
3.2 Analisis Kebutuhan ...............................................................................17
3.3 Perancangan Sistem..............................................................................17
3.4 Implementasi ........................................................................................18
3.5 Pengujian ..............................................................................................18
3.6 Pengambilan Kesimpulan dan Saran ....................................................18
BAB 4 ANALISIS KEBUTUHAN ................................................................................ 19
4.1 Deskripsi Sistem ....................................................................................19
4.2 Identifikasi Aktor ...................................................................................19
4.2 Kebutuhan Fungsional ..........................................................................20
4.3 Kebutuhan Non-Fungsional ..................................................................25
4.4 Diagram Use Case .................................................................................25
4.5 Skenario Use Case .................................................................................26
BAB 5 PERANCANGAN ........................................................................................... 40
5.1 Perancangan Sequence Diagram ..........................................................40
5.1.1 Sequence Diagram Membuat Transaksi Penarikan .................... 40
5.1.2 Sequence Diagram Mengubah Data Nasabah ............................ 41
5.1.3 Sequence Diagram Melihat Buku Tabungan ............................... 42
5.2 Perancangan Class Diagram .................................................................43
5.3 Perancangan Komponen .......................................................................43
5.3.1 Algoritme Fungsi insertPenarikan ............................................... 45
5.3.2 Algoritme Fungsi updateAkun..................................................... 45
5.3.3 Algoritme Fungsi bukuTabungan ............................................... 46
5.3.4 Algoritme Fungsi detailPenjemputan ......................................... 46
5.3.5 Algoritme Fungsi Login ................................................................ 47

ix
5.4 Perancangan Basis Data ........................................................................48
5.5 Perancangan Antarmuka ......................................................................48
5.5.1 Perancangan Antarmuka Membuat Transaksi Penarikan Saldo . 49
5.5.2 Perancangan Antarmuka Mengubah Data Nasabah ................... 49
5.5.3 Perancangan Antarmuka Melihat Buku Tabungan ..................... 49
5.5.4 Perancangan Antarmuka Melihat Detail Penjemputan .............. 50
5.5.5 Perancangan Antarmuka Login ................................................... 50
5.5.6 Perancangan Antarmuka Melihat Transaksi Penarikan Saldo .... 51
5.5.7 Perancangan Antarmuka Membuat Transaksi Penyetoran ........ 51
BAB 6 IMPLEMENTASI SISTEM .............................................................................. 52
6.1 Spesifikasi Sistem ..................................................................................52
6.1.1 Spesifikasi Perangkat Keras ......................................................... 52
6.1.2 Spesifikasi Perangkat Lunak ........................................................ 52
6.1.3 Batasan Implementasi ................................................................. 53
6.2 Implementasi Basis Data.......................................................................53
6.3 Implementasi Source Code ...................................................................54
6.3.1 Source Code Fungsi insertPenarikan ........................................... 54
6.3.2 Source Code Fungsi updateAkun ................................................ 55
6.3.3 Source Code Fungsi bukuTabungan ............................................ 56
6.3.4 Source Code Fungsi detailPenjemputan...................................... 56
6.3.5 Source Code Fungsi Login ............................................................ 58
6.4 Implementasi Antarmuka .....................................................................59
6.4.1 Implementasi Antarmuka Membuat Transaksi Penarikan Saldo 59
6.4.2 Implementasi Antarmuka Mengubah Data Akun Nasabah ........ 59
6.4.3 Implementasi Antarmuka Melihat Buku Tabungan .................... 60
6.4.4 Implementasi Antarmuka Melihat Detail Penjemputan ............. 60
6.4.5 Implementasi Antarmuka Login .................................................. 61
6.4.6 Implementasi Antarmuka Melihat Transaksi Penarikan Saldo ... 61
6.4.7 Implementasi Antarmuka Membuat Transaksi Penyetoran ....... 62
BAB 7 PENGUJIAN ................................................................................................. 63
7.1 Pengujian Unit.......................................................................................63
7.1.1 Pengujian Unit Klas c_penarikan pada Fungsi insertPenarikan() 63

x
7.1.2 Pengujian Unit Klas c_akun pada Fungsi updateAKun() ............. 65
7.1.3 Pengujian Unit Klas c_nasabah pada Fungsi bukuTabungan() ... 67
7.2 Pengujian Validasi .................................................................................68
7.2.1 Pengujian Validasi Login .............................................................. 69
7.2.2 Pengujian Validasi Lupa Password .............................................. 70
7.2.3 Pengujian Validasi Melihat Profil BSM ........................................ 71
7.2.4 Pengujian Validasi Melihat Info nasabah .................................... 71
7.2.5 Pengujian Validasi Cek Harga Sampah ........................................ 72
7.2.6 Pengujian Validasi Melihat Profil Nasabah ................................. 72
7.2.7 Pengujian Validasi Melihat Buku Tabungan ................................ 73
7.2.8 Pengujian Validasi Memesan Jemput Sampah ........................... 73
7.2.9 Pengujian Validasi Melihat Riwayat Jemput Sampah ................. 75
7.2.10 Pengujian Validasi Melacak Penjemputan Sampah .................. 76
7.2.11 Pengujian Validasi Melihat Riwayat Penyetoran ...................... 77
7.2.12 Pengujian Validasi Melihat Detail Riwayat Penyetoran ............ 77
7.2.13 Pengujian Validasi Mengubah Password .................................. 78
7.2.14 Pengujian Validasi Logout ......................................................... 80
7.2.15 Pengujian Validasi Membuat Akun ........................................... 80
7.2.16 Pengujian Validasi Melihat Akun Nasabah ............................... 82
7.2.17 Pengujian Validasi Mengubah Data Nasabah ........................... 82
7.2.18 Pengujian Validasi Menghapus Akun Nasabah ......................... 84
7.2.19 Pengujian Validasi Melihat Akun Petugas ................................. 85
7.2.20 Pengujian Validasi Mengubah Data Petugas ............................ 86
7.2.21 Pengujian Validasi Menghapus Akun Petugas .......................... 87
7.2.22 Pengujian Validasi Verifikasi Transaksi Penyetoran .................. 88
7.2.23 Pengujian Validasi Melihat Transaksi Penyetoran .................... 89
7.2.24 Pengujian Validasi Melihat Detail Transaksi Penyetoran ......... 90
7.2.25 Pengujian Validasi Menghapus Transaksi Penyetoran ............. 91
7.2.26 Pengujian Validasi Membuat Transaksi Penarikan ................... 92
7.2.27 Pengujian Validasi Melihat Transaksi Penarikan....................... 93
7.2.28 Pengujian Validasi Menghapus Transaksi Penarikan ................ 94
7.2.29 Pengujian Validasi Melihat Penjemputan Sampah ................... 95

xi
7.2.30 Pengujian Validasi Melihat Detail Penjemputan....................... 96
7.2.31 Pengujian Validasi Mengubah Status Penjemputan ................. 97
7.2.32 Pengujian Validasi Membuat Transaksi Penyetoran ................ 99
7.3 Pengujian Compatibility ......................................................................101
7.4 Hasil Analisis Pengujian.......................................................................103
BAB 8 PENUTUP .................................................................................................. 104
8.1 Kesimpulan..........................................................................................104
8.2 Saran ...................................................................................................104
DAFTAR PUSTAKA................................................................................................ 105
LAMPIRAN A SURAT PERNYATAAN ..................................................................... 107
LAMPIRAN B HASIL WAWANCARA ...................................................................... 108

xii
DAFTAR GAMBAR

Gambar 2.1 Model Waterfall ................................................................................ 10


Gambar 2.2 Contoh Use Case Diagram ................................................................. 12
Gambar 3.1 Diagram AlirlPenelitian...................................................................... 16
Gambar 4.1 Diagram Use Case Sistem .................................................................. 26
Gambar 5.1 Diagram Alir Perancangan Sistem ..................................................... 40
Gambar 5.2 Sequnce Diagram Membuat Transaksi Penarikan ............................ 41
Gambar 5.3 Sequnce Diagram Mengubah Data Nasabah .................................... 42
Gambar 5.4 Sequnce Diagram Melihat Buku Tabungan ....................................... 43
Gambar 5.5 Class Diagram Sistem ........................................................................ 44
Gambar 5.6 Entity Relationship Diagram Sistem .................................................. 48
Gambar 5.7 Antarmuka Membuat Transaksi Penarikan Saldo ............................. 49
Gambar 5.8 Perancangan Antarmuka Mengubah Data Nasabah ......................... 49
Gambar 5.9 Perancangan Antarmuka Melihat Buku Tabungan ........................... 50
Gambar 5.10 Perancangan Antarmuka Melihat Melihat Detail Penjemputan .... 50
Gambar 5.11 Perancangan Antarmuka Login ....................................................... 50
Gambar 5.12 Perancangan Antarmuka Melihat Transaksi Penarikan Saldo ........ 51
Gambar 5.13 Perancangan Antarmuka Membuat Transaksi Penyetoran ............ 51
Gambar 6.1 Physical Data Model .......................................................................... 53
Gambar 6.2 Antarmuka Membuat Transaksi Penarikan Saldo ............................. 59
Gambar 6.3 Implementasi Antarmuka Mengubah Data Akun Nasabah .............. 60
Gambar 6.4 Antarmuka Melihat Buku Tabungan ................................................. 60
Gambar 6.5 Antarmuka Melihat Detail Penjemputan .......................................... 61
Gambar 6.6 Implementasi Antarmuka Login ........................................................ 61
Gambar 6.7 Implementasi Antarmuka Melihat Transaksi Penarikan Saldo ........ 62
Gambar 6.8 Implementasi Antarmuka Membuat Transaksi Penyetoran ............ 62
Gambar 7.1 Flow Graph insertPenarikan .............................................................. 64
Gambar 7.2 Flow Graph updateAkun() ................................................................. 66
Gambar 7.3 Flow Graph bukuTabungan()............................................................. 68
Gambar 7.4 Pengujian Compatibility pada Chrome Browser.............................. 102
Gambar 7.5 Pengujian Compatibility pada Opera Browser ................................ 102
Gambar 7.6 Pengujian Compatibility pada Microsoft Edge Browser .................. 102

xiii
DAFTAR TABEL

Tabel 2.1 Komponen Sequence Diagram .............................................................. 12


Tabel 4.1 Identifikasi Aktor Sistem........................................................................ 19
Tabel 4.2 KebutuhanlFungsional ........................................................................... 20
Tabel 4.3 Kebutuhan Non Fungsional ................................................................... 25
Tabel 4.4 Skenario Use Case Login ........................................................................ 27
Tabel 4.5 Skenario Use Case Lupa Password ........................................................ 27
Tabel 4.6 Skenario Use Case Melihat Profil BSM .................................................. 28
Tabel 4.7 Skenario Use Case Melihat Info Nasabah ............................................. 28
Tabel 4.8 Skenario Use Case Cek Harga Sampah .................................................. 28
Tabel 4.9 Skenario Use Case Melihat Profil Nasabah ........................................... 28
Tabel 4.10 Skenario Use Case Melihat Buku Tabungan ........................................ 29
Tabel 4.11 Skenario Use Case Memesan Jemput Sampah ................................... 29
Tabel 4.12 Skenario Use Case Melihat Riwayat Jemput Sampah ......................... 30
Tabel 4.13 Skenario Melacak Penjemputan Sampah............................................ 30
Tabel 4.14 Skenario Use Case Melihat Riwayat Penyetoran ................................ 30
Tabel 4.15 Skenario Use Case Melihat Detail Riwayat Penyetoran ...................... 31
Tabel 4.16 Skenario Use Case Mengubah Password ............................................ 31
Tabel 4.17 Skenario Use Case Logout ................................................................... 32
Tabel 4.18 Skenario Use Case Membuat Akun ..................................................... 32
Tabel 4.19 Skenario Use Case Melihat Akun Nasabah.......................................... 32
Tabel 4.20 Skenario Use Case Mengubah Data Nasabah ..................................... 33
Tabel 4.21 Skenario Use Case Menghapus Akun Nasabah ................................... 33
Tabel 4.22 Skenario Use Case Melihat Akun Petugas ........................................... 34
Tabel 4.23 Skenario Use Case Mengubah Data Petugas ...................................... 34
Tabel 4.24 Skenario Use Case Menghapus Akun Petugas .................................... 34
Tabel 4.25 Skenario Use Case Verifikasi Transaksi Penyetoran ............................ 35
Tabel 4.26 Skenario Use Case Melihat Transaksi Penyetoran .............................. 35
Tabel 4.27 Skenario Use Case Melihat Detail Transaksi Penyetoran.................... 35
Tabel 4.28 Skenario Use Case Menghapus Transaksi Penyetoran ....................... 36
Tabel 4.29 Skenario Use Case Membuat Transaksi Penarikan ............................. 36
Tabel 4.30 Skenario Use Case Melihat Transaksi Penarikan ................................. 37

xiv
Tabel 4.31 Skenario Use Case Menghapus Transaksi Penarikan .......................... 37
Tabel 4.32 Skenario Use Case Melihat Penjemputan Sampah ............................. 38
Tabel 4.33 Skenario Use Case Melihat Detail Penjemputan................................. 38
Tabel 4.34 Skenario Use Case Mengubah Status Penjemputan ........................... 38
Tabel 4.35 Skenario Use Case Membuat Transaksi Penyetoran........................... 39
Tabel 6.1 Spesifikasi Perangkat Keras ................................................................... 52
Tabel 6.2 Spesifikasi Perangkat Lunak .................................................................. 52
Tabel 7.1 Hasil Pengujian Unit pada fungsi insertPenarikan() .............................. 64
Tabel 7.2 Hasil Pengujian Unit Pada Fungsi updateAkun() ................................... 66
Tabel 7.3 Hasil Pengujian Unit Pada Fungsi bukuTabungan() ............................... 68
Tabel 7.4 Kasus Uji Berhasil Login ......................................................................... 69
Tabel 7.5 Kasus Uji Login Alternatif 1 ................................................................... 69
Tabel 7.6 Kasus Uji Login Alternatif 2 ................................................................... 69
Tabel 7.7 Kasus Uji Berhasil Lupa Password ......................................................... 70
Tabel 7.8 Kasus Uji Lupa Password Alternatif 1 .................................................... 70
Tabel 7.9 Kasus Uji Lupa Password Alternatif 2 .................................................... 71
Tabel 7.10 Kasus Uji Berhasil Melihat Profil BSM ................................................. 71
Tabel 7.11 Kasus Uji Berhasil Melihat Info nasabah ............................................. 71
Tabel 7.12 Kasus Uji Berhasil Cek Harga Sampah ................................................. 72
Tabel 7.13 Kasus Uji Berhasil Melihat Profil Nasabah .......................................... 72
Tabel 7.14 Kasus Uji Melihat Profil Nasabah Alternatif 1 ..................................... 72
Tabel 7.15 Kasus Uji Berhasil Melihat Buku Tabungan ......................................... 73
Tabel 7.16 Kasus Uji Melihat Buku Tabungan Alternatif 1.................................... 73
Tabel 7.17 Kasus Uji Berhasil Memesan Jemput Sampah..................................... 73
Tabel 7.18 Kasus Uji Memesan Jemput Sampah Alternatif 1 ............................... 74
Tabel 7.19 Kasus Uji Memesan Jemput Sampah Alternatif 2 ............................... 74
Tabel 7.20 Kasus Uji Memesan Jemput Sampah Alternatif 3 ............................... 75
Tabel 7.21 Kasus Uji Berhasil Melihat Riwayat Jemput Sampah .......................... 75
Tabel 7.22 Kasus Uji Melihat Riwayat Jemput Sampah Alternatif 1 ..................... 75
Tabel 7.23 Kasus Uji Berhasil Melacak Penjemputan Sampah ............................. 76
Tabel 7.24 Kasus Uji Melacak Penjemputan Sampah Alternatif 1 ........................ 76
Tabel 7.25 Kasus Uji Berhasil Melihat Riwayat Penyetoran ................................. 77

xv
Tabel 7.26 Kasus Uji Melihat Riwayat Penyetoran Alternatif 1 ............................ 77
Tabel 7.27 Kasus Uji Berhasil Melihat Detail Riwayat Penyetoran ....................... 77
Tabel 7.28 Kasus Uji Membuat Detail Riwayat Penyetoran Alternatif 1 .............. 78
Tabel 7.29 Kasus Uji Berhasil Mengubah Password ............................................. 78
Tabel 7.30 Kasus Uji Mengubah Password Alternatif 1 ........................................ 79
Tabel 7.31 Kasus Uji Mengubah Password Alternatif 2 ........................................ 79
Tabel 7.32 Kasus Uji Mengubah Password Alternatif 3 ........................................ 79
Tabel 7.33 Kasus Uji Berhasil Logout .................................................................... 80
Tabel 7.34 Kasus Uji Berhasil Membuat Akun ...................................................... 80
Tabel 7.35 Kasus Uji Membuat Akun Alternatif 1 ................................................. 81
Tabel 7.36 Kasus Uji Membuat Akun Alternatif 2 ................................................. 81
Tabel 7.37 Kasus Uji Membuat Akun Alternatif 3 ................................................. 81
Tabel 7.38 Kasus Uji Berhasil Melihat Akun Nasabah ........................................... 82
Tabel 7.39 Kasus Uji Melihat Akun Nasabah Alternatif 1 ..................................... 82
Tabel 7.40 Kasus Uji Berhasil Mengubah Data Nasabah ...................................... 82
Tabel 7.41 Kasus Uji Mengubah Data Nasabah Alternatif 1 ................................. 83
Tabel 7.42 Kasus Uji Mengubah Data Nasabah Alternatif 2 ................................. 83
Tabel 7.43 Kasus Uji Berhasil Menghapus Akun Nasabah .................................... 84
Tabel 7.44 Kasus Uji Menghapus Akun Nasabah Alternatif 1 ............................... 84
Tabel 7.45 Kasus Uji Menghapus Akun Nasabah Alternatif 2 ............................... 84
Tabel 7.46 Kasus Uji Berhasil Melihat Akun Petugas ............................................ 85
Tabel 7.47 Kasus Uji Melihat Akun Petugas Alternatif 1....................................... 85
Tabel 7.48 Kasus Uji Berhasil Mengubah Data Petugas ........................................ 86
Tabel 7.49 Kasus Uji Mengubah Data Petugas Alternatif 1 .................................. 86
Tabel 7.50 Kasus Uji Mengubah Data Petugas Alternatif 2 .................................. 87
Tabel 7.51 Kasus Uji Berhasil Menghapus Akun Petugas ..................................... 87
Tabel 7.52 Kasus Uji Menghapus Akun Petugas Alternatif 1 ................................ 88
Tabel 7.53 Kasus Uji Menghapus Akun Petugas Alternatif 2 ................................ 88
Tabel 7.54 Kasus Uji Berhasil Verifikasi Transaksi Penyetoran ............................. 88
Tabel 7.55 Kasus Uji Verifikasi Transaksi Penyetoran Alternatif 1 ....................... 89
Tabel 7.56 Kasus Uji Berhasil Melihat Transaksi Penyetoran ............................... 89
Tabel 7.57 Kasus Uji Melihat Transaksi Penyetoran Alternatif 1 .......................... 89

xvi
Tabel 7.58 Kasus Uji Berhasil Melihat Detail Transaksi Penyetoran ..................... 90
Tabel 7.59 Kasus Uji Melihat Detail Transaksi Penyetoran Alternatif 1 ............... 90
Tabel 7.60 Kasus Uji Berhasil Menghapus Transaksi Penyetoran ......................... 91
Tabel 7.61 Kasus Uji Menghapus Transaksi Penyetoran Alternatif 1 ................... 91
Tabel 7.62 Kasus Uji Menghapus Transaksi Penyetoran Alternatif 2 ................... 91
Tabel 7.63 Kasus Uji Berhasil Membuat Transaksi Penarikan .............................. 92
Tabel 7.64 Kasus Uji Membuat Transaksi Penarikan Alternatif 1 ......................... 92
Tabel 7.65 Kasus Uji Membuat Transaksi Penarikan Alternatif 2 ......................... 93
Tabel 7.66 Kasus Uji Membuat Transaksi Penarikan Alternatif 3 ......................... 93
Tabel 7.67 Kasus Uji Berhasil Melihat Transaksi Penarikan .................................. 93
Tabel 7.68 Kasus Uji Melihat Transaksi Penarikan Alternatif 1 ............................ 94
Tabel 7.69 Kasus Uji Berhasil Menghapus Transaksi Penarikan ........................... 94
Tabel 7.70 Kasus Uji Menghapus Transaksi Penarikan Alternatif 1 ...................... 95
Tabel 7.71 Kasus Uji Menghapus Transaksi Penarikan Alternatif 2 ...................... 95
Tabel 7.72 Kasus Uji Berhasil Melihat Penjemputan Sampah .............................. 95
Tabel 7.73 Kasus Uji Melihat Penjemputan Sampah Alternatif 1 ......................... 96
Tabel 7.74 Kasus Uji Berhasil Melihat Detail Penjemputan .................................. 96
Tabel 7.75 Kasus Uji Melihat Detail Penjemputan Alternatif 1 ............................ 97
Tabel 7.76 Kasus Uji Berhasil Mengubah Status Penjemputan ............................ 97
Tabel 7.77 Kasus Uji Mengubah Status Penjemputan Alternatif 1 ....................... 98
Tabel 7.78 Kasus Uji Mengubah Status Penjemputan Alternatif 2 ....................... 98
Tabel 7.79 Kasus Uji Mengubah Status Penjemputan Alternatif 3 ....................... 98
Tabel 7.80 Kasus Uji Mengubah Status Penjemputan Alternatif 4 ....................... 99
Tabel 7.81 Kasus Uji Berhasil Membuat Transaksi Penyetoran ............................ 99
Tabel 7.82 Kasus Uji Membuat Transaksi Penyetoran Alternatif 1 .................... 100
Tabel 7.83 Kasus Uji Membuat Transaksi Penyetoran Alternatif 2 .................... 100
Tabel 7.84 Kasus Uji Membuat Transaksi Penyetoran Alternatif 3 .................... 101
Tabel 7.85 Kasus Uji Membuat Transaksi Penyetoran Alternatif 4 .................... 101

xvii
BAB 1 PENDAHULUAN

1.1 Latar belakang


Sampah merupakan hasil buangan dari kegiatan yang dilakukan sehari-hari
oleh manusia. Universitas Georgia melakukan penelitian pada tahun 2015,
mengatakan bahwa “Indonesia menjadi negara kedua terbesar di dunia sebagai
penghasil sampah plastik ke lautan”, hasil penelitian menjadi sebuah peringatan
besar kepada kita semua betapa memperihatinkannya kondisi Indonesia saat ini.
Jumlah sampah yang meningkat sesuai dengan peningkatan penduduk dan lahan
yang terbatas untuk digunakan sebagai pembuangan akhir merupakan masalah
yang harus bisa dipecahkan.
Saat ini kebanyakan masyarakat menganggap sampah sebagai barang
limbah yang kotor beraroma kurang sedap, tidak bermanfaat dan tidak berharga
sehingga sampah tersebut tidak memiliki nilai ekonomi. Presepsi tersebut
membuat masyarakat melakukan cara yang salah dalam menanggulangi sampah
dengan cara paling mudah yaitu membuang sampah sembarangan atau
membakarnya. Hal tersebut akan mengakibatkan kerusakan lingkungan berupa
polusi udara, kerusakan struktur tanah, dan air yang tercemar. Kerusakan
lingkungan yang terjadi akan merugikan masyarakat itu sendiri.
Upaya yang dilakukan pemerintah untuk menanggulangi sampah yaitu
dengan dirumuskannya Undang-undang No 18 Tahun 2008 tentang Pengelolaan
Sampah (UUPS), disebutkan dalam UUPS bahwa pengelolaan sampah dapat
dilakukan dengan pengurangan sampah dan penanganan sampah. Pengurangan
sampah merupakan kegiatan pembatasan yang dilakukan agar tidak banyak
sampah yang tertimbun, sedangkan penanganan sampah merupakan proses
pengelompokan dan pemisahan sampah sesuai jenisnya.
Pengelolaan sampah bukan serta merta hanya tugas pemerintah saja,
masyarakat yang berperan sebagai penghasil sampahpun harus bisa bertanggung
jawab untuk menjaga lingkungan. Untuk mengatasi masalah sampah mula-mula
pemerintah sudah berupaya melakukan program sosialisasi yang mengacu pada
UUPS sehingga diharapkan dapat mengubah presepsi masyarakat mengenai
sampah sebagai limbah yang kotor. Upaya yang dilakukan dalam penanganan
sampah agar tidak menjadi timbunan di TPA dengan cara mengubah limbah
sampah menjadi barang yang mempunyai nilai jual dan nilai guna. Alternatif yang
telah dilakukan dalam mengatasi permasalahan pengolahan sampah yaitu dengan
dicanangkan bank sampah. Bambang Surweda pertama kali mencetuskan konsep
bank sampah bertujuan untuk membuat lingkungan terbebas dari sampah dan
terhindar dari polusi sehingga tercipta lingkungan yang bersih.
Bank Sampah Malang (BSM) merupakan bank sampah yang terdapat di kota
Malang, BSM tersebut beroperasi sejak tahun 2011. BSM diresmikan pada tahun
2012 oleh Menteri Lingkungan Hidup Prof. Dr. Baltazar Kambuaya. BSM sangat
bermanfaat bagi masyarakat sekitar kota Malang dilihat dari aspek ekonomi

1
hingga lingkungan, BSM-pun meraih prestasi tingkat regional sampai nasional.
Beberapa bank sampah yang terdapat di Indonesia melakukan studi lapangan
untuk mempelajari konsep dan aplikasi di BSM.
Mengurangi jumlah sampah yang ada di TPA/TPS sekitar kota Malang dan
mengolah sampah tersebut menjadi suatu karya atau produk yang memiliki harga
jual merupakan salah satu tujuan dari BSM. Demi menciptakan karya-karya dari
sampah, diperlukannya peran dan kesadaran dari masyarakat untuk dapat
mendukung BSM dalam pengelolaan sampah. Salah satu kegiatan dari
pengelolaan sampah adalah tabungan bank sampah layak jual. Seperti bank pada
umumnya, BSM memiliki sistem setor sampah dan tarik tabungan dimana
masyarakat (nasabah) dapat menabung sampah kemudian menukarkan sampah
yang sudah di setor dalam bentuk uang.
Nasabah dapat melakukan setor sampah di BSM dengan dua cara yaitu; cara
pertama mendatangi secara langsung ke kantor BSM, sedangkan cara kedua
memanfaatkan fasilitas jemput sampah dari pihak BSM. Penyetoran sampah
secara langsung ke BSM dapat dilakukan oleh nasabah dengan membawa sampah
ke bagian penimbangan sampah, petugas penimbangan akan mencatat jumlah
sampah yang disetor pada slip penimbangan, kemudian nasabah membawa slip
penimbangan tersebut serta buku tabungan milik nasabah ke teller BSM, teller
akan mencatat transaksi nasabah ke dalam buku tabungan nasabah. Penyetoran
sampah dengan layanan jemput sampah dapat dilakukan dengan melakukan
pemesanan jemput sampah melalui telepon, teller akan mencatat jadwal
penjemputan. Petugas divisi pengambilan sampah akan datang untuk mengambil
sampah dan menimbang secara langsung sampah yang disetor oleh nasabah, lalu
mencatat total sampah pada slip penimbangan sementara. Nasabah harus
menitipkan buku tabungan kepada petugas untuk kemudian dapat dicatat hasil
transaksi penyetoran oleh petugas administrasi di kantor BSM. Nasabah dapat
mengambil kembali buku tabungannya di kantor BSM setelah petugas selesai
merekap transaksi nasabah pada buku tabungan.
Transaksi penarikan saldo tabungan dapat dilakukan dengan cara nasabah
mendatangi kantor BSM dengan membawa fotokopi KTP dan buku tabungan
kemudian mengisi slip penarikan. Teller BSM akan mencatat slip penarikan
tersebut pada buku catatan penarikan saldo dan mencetak nota penarikan saldo
kepada nasabah. Nasabah dapat melakukan penarikan saldo tanpa ada syarat
minimum ataupun maksimum saldo dari total saldo yang dimiliki nasabah. Teller
akan memberikan total uang sesuai dengan jumlah saldo yang ditarik oleh
nasabah.
Terdapat beberapa nasabah BSM merasa kesusahan dalam melakukan
transaksi di BSM. Keluhan tersebut seperti buku tabungan nasabah harus dibawa
oleh petugas BSM pada saat melakukan layanan jemput sampah dan nasabah
perlu mengambilnya kembali di kemudian hari. Nasabah juga merasa kesusahan
untuk dapat mengetahui jumlah saldo terkini setelah melakukan penjemputan
sampah, karena hanya dapat diketahui apabila buku tabungan telah dicetak oleh
petugas dan nasabah telah mengambil buku tabungan miliknya (Kartika, 2017).

2
Kendala dalam bertransaksi bukan hanya dirasakan oleh nasabah, beberapa
petugas BSM juga sering mengalami kesusahan, seperti dalam mencari lokasi dari
nasabah yang melakukan pemesanan jemput sampah dimana nasabah hanya
memberikan informasi seperti nomor rekening, jadwal penjemputan, dan alamat
nasabah. Petugas BSM juga mengalami kesusahan dalam memperkenalkan BSM
kepada masyarakat yang belum mengetahui BSM, seperti memberikan informasi
seputar BSM atau bagaimana cara mendaftar sebagai nasabah karena belum
adanya website resmi untuk memperkenalkan Bank Sampah Malang kepada
masyarakat umum (Kartika, 2017).
Berdasarkan permasalahan tersebut, maka penulis bermaksud untuk
merancang dan membangun sebuah sistem yang dapat digunakan sebagai solusi
bagi Bank Sampah Malang dalam mengelola transaksi bank sampah secara online
yang diberi judul “Perancangan Sistem Aplikasi Transaksi Bank Sampah Online
Berbasis Web (Studi Kasus : Bank Sampah Malang)”. Dimana sistem ini dapat
memberikan informasi-informasi umum seputar BSM, sistem dapat membantu
nasabah dalam melihat riwayat transaksi penyetoran dan penarikan secara terkini
melalui buku tabungan online, dan sistem juga dapat membantu petugas dalam
melihat lokasi dari nasabah yang melakukan pesanan jemput sampah dengan fitur
dari google maps API. Sistem akan dibuat berbasis web sehingga dapat diakses
dari banyak perangkat komputer yang terhubung dengan internet.

1.2 Rumusan masalah


Berdasarkan latar belakang yang sudah dijelaskan sebelumnya, berikut
adalah hasil dari rumusan masalah yang akan dibahas:
1. Bagaimana hasil analisis kebutuhan Sistem Aplikasi Transaksi Bank Sampah
Online yang sesuai dengan kebutuhan pengguna?
2. Bagaimana hasil perancangan Sistem Aplikasi Transaksi Bank Sampah Online
yang sesuai dengan hasil analisis kebutuhan?
3. Bagaimana hasil implementasi Sistem Aplikasi Transaksi Bank Sampah Online
yang sesuai dengan hasil perancangan sistem?
4. Bagaimana hasil pengujian dari Sistem Aplikasi Transaksi Bank Sampah Online
yang telah dibangun?

1.3 Tujuan
Berikut merupakan tujuan utama dari penulisan penelitian ini :
1. Menganalisis dan menyusun kebutuhan Sistem Aplikasi Transaksi Bank
Sampah Online sesuai dengan kebutuhan pengguna.
2. Merancang sistem sesuai dengan hasil dari analisis kebutuhan yang
diperoleh.
3. Mengimplementasikan hasil perancangan dari Sistem Aplikasi Transaksi
Bank Sampah Online.
4. Melakukan pengujian terhadap Sistem Aplikasi Transaksi Bank Sampah
Online yang dibangun.

3
1.4 Manfaat
Dalam membangun sistem aplikasi transaksi bank sampah online ini, penulis
berharap penelitian ini dapat bermanfaat bagi Bank Sampah Malang terutama
bagi nasabah dan petugas teller BSM. Manfaat dari sistem ini adalah :
Bagi nasabah :
1. Nasabah dapat mengecek saldo tabungan dimana saja dan dari perangkat
apa saja secara online.
2. Nasabah dapat melihat riwayat transaksi penyetoran dan penarikan saldo
tabungan yang pernah dilakukan.
3. Nasabah dapat melakukan pemesanan jemput sampah dan menentukan
lokasi penjemputan dengan menggunakan google maps.
Bagi petugas BSM :
1. Petugas dapat mengelola transaksi bank sampah secara online.
2. Petugas dapat mengetahui lokasi penjemputan sampah dengan
menggunakan bantuan fitur pada google maps.

1.5 Batasan masalah


Adapun batasan masalah dari penelitian ini sehingga mencegah terjadinya
penyimpangan dari tujuan yang sudah direncanakan :
1. Sistem hanya diterapkan pada Bank Sampah Malang.
2. Sistem akan dibangun dengan menggunakan platform web.
3. Sistem dibangun dengan menggunakan bahasa pemrograman PHP,
HTML5, CSS, dan JavaScript.
4. Sistem dibangun dengan menggunakan framework CodeIgniter.
5. Sistem menggunakan database MySQL.
6. Sistem ini membutuhkan koneksi internet untuk dapat menerima dan
mengirim data ke server.
7. Sistem akan dapat diakses hanya dengan menggunakan browser yang
mendukung.

1.6 Sistematika pembahasan


Sistematika pembahasan yang digunakan dalam penulisan penelitian ini
adalah :
BAB I PENDAHULUAN
Bab ini berisi Latar Belakang Masalah, Rumusan Masalah, Tujuan
Penelitian, Manfaat Penelitian yang diharapkan, dan Sistematika
Penulisan.
BAB II TINJAUAN PUSTAKA
Bab ini membahas tentang metode-metode dan teori yang
digunakan untuk mendasari penelitian ini.

4
BAB III METODOLOGI PENELITIAN
Bab ini berisi metode penilitan yang menjelaskan metode dan
langkah proses yang digunakan dalam Perancangan Sistem Aplikasi
Transaksi Bank Sampah Online.
BAB IV ANALISIS KEBUTUHAN
Bab ini membahas analisis kebutuhan yang dibutuhkan dan proses
perancangan solusi yang dilakukan dalam Perancangan Sistem Aplikasi
Transaksi Bank Sampah Online.
BAB V PERANCANGAN SISTEM
Bab ini membahas tentang perancangan perangkat lunak yang akan
dilakukan berdasarkan analisis kebutuhan yang telah diperoleh dari bab
sebelumnya. Perancangan sistem yang digunakan adalah pemodelan
sequence diagram, pemodelan class diagram, dan perancangan basis data.
BAB VI IMPLEMENTASI
Bab ini berisi implementasi dari Sistem Aplikasi Transaksi bank
sampah online berdasarkan perancangan sistem yang telah dibuat.
BAB VII PENGUJIAN
Bab ini membahas tentang teknik pengujian yang dilakukan dan
analisis hasil pengujian terhadap sistem.
BAB VIII KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan yang diperoleh dari hasil perancangan
sistem ini dan memuat saran-saran dari penulis terhadap penelitian
selanjutnya.

5
BAB 2 LANDASAN KEPUSTAKAAN

Pada bab landasan kepustakaan, akan dibahas kajian pustaka dan dasar-
dasar teori yang digunakan penulis sebagai penunjang dalam menyusun penelitian
ini. Kajian pustaka yang dibahas pada penelitian ini digunakan sebagai
pembanding dari penelitian-penelitian terdahulu yang berkaitan dengan sistem
aplikasi transaksi bank sampah online dan sebagai penunjang dalam penyusunan
penelitian ini.

2.1 Kajian Pustaka


Kajian pustaka dilakukan guna sebagai referensi dalam penyusunan
penelitian ini. Kajian pustaka yang digunakan sebagai referensi adalah beberapa
penelitian terkait dengan sistem bank sampah online. Tidak sedikit ditemukan
penelitian-penelitian mengenai bank sampah online tetapi dari seluruh penelitian
yang ada, hanya tiga penelitian yang akan digunakan sebagai referensi. Tiga
penelitian akan dikaji untuk dapat menganalisis kebutuhan dari sistemnya.
Referensi yang pertama diperoleh dari Andi Dwi Riyanto dan Galuh Kusumastuti
(2015), penelitian oleh kedua adalah penelitian dari Haryati Wattimena (2015),
dan yang ketiga adalah penelitian dari Martina Indah (2017).
Penelitian pertama adalah penelitian yang dilakukan oleh Andi Dwi Riyanto
dan Galuh Kusumastuti pada tahun 2015 dengan judul “Pembangungan Sitem
Informasi Pengolahan Data Pada Tabungan Bank Sampah Ceria Purwokerto”.
Tujuan dari penelitian ini adalah mempermudah petugas dalam pengolahan data
dan transaksi pada Bank Sampah Ceria dan meningkatkan pengoperasian petugas
dalam menyediakan informasi yang mudah, cepat, dan akurat. Sistem ini
dikembangkan dengan menggunakan metode Extreme Programming (XP) dan
berbasis desktop. Pengujain yang dilakukan terhadap sistem menggunakan teknik
pengujian black box dan customer test. Terdapat 2 aktor yaitu admin dan nasabah.
Admin dapat membuat laporan transaksi, laporan tabungan, laporan pemasukan,
mengolah data nasabah, dan mengolah data transaksi. Nasabah dapat mengecek
saldo dan membuat transaksi.
Penelitian kedua adalah penelitian yang dilakukan oleh Haryati Wattimena
(2015) dengan judul “Sistem Informasi Pengolahan Bank Sampah Malang”. Tujuan
dari penelitian ini adalah untuk mempermudah admin dalam melakukan transaksi
sampah dengan lebih efisien, mencari data sampah, dan membuat laporan data
harian. Sistem ini dibangun berbasis desktop dan hanya untuk penggunaan
internal perusahaan tersebut. Aktor yang ada pada sistem dibagi menjadi 2 yaitu,
direktur dan admin. Fitur-fitur yang terdapat pada sistem adalah direktur dapat
melihat laporan transaksi, admin dapat mengolah data user, sampah, nasabah,
customer, divisi, transaksi pembelian, transaksi penjualan, dan transaksi biaya.
Teknik pengujian yang digunakan adalah black box testing.
Penelitan ketiga dilakukan oleh Martina Indah pada tahun 2017 dengan
judul “Rancang Bangun Sistem Informasi Bank Sampah Berbasis Web”. Tujuan dari

6
penelitian ini adalah memudahkan petugas dan user dalam melakukan pelayanan
dan proses transaksi bank sampah dengan baik. Sistem ini dikembangkan dengan
menggunakan metode Waterfall dan berbasis web. Teknik pengumpulan data
yang digunakan adalah metode wawancara, survey, studi pustaka, dokumentasi
dan arsip. Teknik pengujian yang digunakan adalah pengujian black box untuk
menguji interface sistem. Fitur-fitur yang terdapat pada sistem adalah admin
dapat mencatat transaksi, admin dapat memasukkan dan mengedit data nasabah,
admin dapat memasukkan dan mengedit data sampah, nasabah dapat mengecek
saldo, dan nasabah dapat melihat beranda/profil. Aktor-aktor yang ada pada
sistem ada 2 yaitu, admin dan nasabah.

2.2 Bank Sampah Malang


Bank Sampah Malang (BSM) merupakan lembaga yang berfokus pada
pengelolaan sampah. BSM memiliki maksud dan tujuan untuk dapat mengurangi
jumlah sampah yang ada di TPA/TPS sekitar kota Malang. Dalam pengelolaan dan
pengembangan BSM dibantu oleh pemerintah dinas kota Malang dan CSR PT.PLN
Distribusi Jawa Timur. BSM sendiri didirikan sebagai sarana/wadah bagi
masyarakat kota Malang untuk mendapatkan pembinaan dan pelatihan mengenai
pengolahan sampah. Dari sampah yang ada BSM kemudian mengelola sampah
tersebut dan memasarkan hasil karya dari sampah yang dikelolanya (Bank sampah
Malang, 2016).
Dalam menangani permasalahan sampah BSM dibangun dengan memiliki 3
misi utama, yaitu pengelolaan sampah sampai bersih, penanaman pohon, dan
pemanfaatan sampah. Kegiatan-kegiatan yang biasa dilakukan oleh BSM adalah
mengelola sampah menjadi suatu karya yang kemudian dapat dipasarkan kepada
orang lain. Dengan du kungan pemerintah kota Malang, BSM menjadi sebuah
badan usaha yang diharapkan dapat mengubah cara pandang masyarakat kota
Malang terhadap sampah yang ada disekitar mereka, dimana sampah tersebut
dapat diolah menjadi sebuah karya yang memiliki nilai jual yang tinggi.
Demi menciptakan karya-karya dari sampah, diperlukannya peran dan
kesadaran dari masyarakat untuk dapat mendukung BSM dalam pengelolaan
sampah. Salah satu kegiatan dari pengelolaan sampah adalah tabungan bank
sampah layak jual. Seperti bank pada umumnya, BSM memiliki sistem setor dan
tarik tabungan dimana masyarakat (nasabah) dapat menabung sampah yang ia
miliki dan menukarkan sampah yang sudah ia setor dalam bentuk uang. BSM
sendiri telah memiliki sekitar 30000 nasabah yang dibedakan menjadi 4 golongan,
yaitu nasabah kelompok, nasabah individu, nasabah sekolah, dan nasabah
instansi. BSM membedakan sampah menjadi 4 jenis, yaitu sampah plastik, logam,
kertas, dan kaca.
Kegiatan transaksi bank sampah yang ada di BSM ini antara lain adalah
nasabah yang telah mendaftarkan diri pada BSM akan memiliki buku tabungan
yang berisi catatan riwayat transaksi setor dan tarik tabungan, nasabah dapat
melakukan setor sampah di BSM dengan dua cara yaitu, mendatangi secara
langsung ke kantor ataupun dengan fasilitas jemput sampah dari pihak BSM

7
dengan jumlah sampah minimal setengah ukuran mobil pickup, sampah yang telah
diterima akan ditimbang oleh petugas kemudian petugas akan mencatat hasil
tabungan dari nasabah di buku bank nasabah dan catatan buku petugas.

2.3 Sistem
Sistem merupakan istilah yang berasal dari kata “sistema” dari bahasa Yunani,
jika ditinjau secara harfiah maka suatu sistem dapat diartikam sebagai himpunan
atau kumpulan dari unsur, komponen, atau variabel-variabel terorganisir, saling
tergantung satu sama lain dan terpadu untuk menjalankan fungsi tertentu dengan
maksud untuk mencapai suatu tujuan. Sistem juga diartikan sebagai kumpulan-
kumpulan elemen yang saling berkaitan dan bertanggungjawab memproses
masukan atau input sehingga menghasilkan keluaran atau output (Prasojo &
Riyanto, 2011). Proses tersebut dapat berupa proses fisik, proses konseptual,
proses procedural, maupun proses sosial, sedangkan keluaran atau output
mentransfer informasi yang telah diproses untuk dapat digunakan pemakai untuk
berbagai tujuan.

2.4 PHP
PHP adalah bahasa server-side-scripting yang menyatu dengan HTML untuk
membuat halaman web yang dinamis. Karena PHP merupakan server-side-
scripting maka sintak dan perintah-perintah PHP akan dieksekusi diserver
kemudian hasilnya akan dikirimkan ke browser dengan format HTML. Dengan
demikian kode program yang ditulis dalam PHP tidak terlihat oleh user sehingga
halaman web lebih terjamin. PHP dirancang untuk membuat halaman web
dinamis, yaitu halaman web yang dapat membentuk sutau tampilan berdasarkan
permintaan terkini, seperti menampilkan isi basis data di halaman web (Arief,
2011).
PHP merupakan suatu proses pemrograman interpreter yang dilakukan untuk
mengubah baris kode menjadi kode mesin yang dapat dipahami langsung oleh
komputer pada kondisi baris kode tersebut dijalankan (Sagita & Hari, 2016). PHP
(hypertext pre-processor) memiliki kelebihan yaitu :
1. Mudah untuk dipelajari,
2. Memiliki kemampuan untuk lintas platform,
3. PHP itu sendiri bersifat open source,
4. Tingkat akses dari PHP termasuk cepat,
5. PHP didukung dengan database, dan
6. PHP didukung dengan beberapa web server.

2.5 HTML (Hyper Text Markup Language)


HTML atau kependekanJdari Hyper Text Markup Language merupakan
dokumen yang berisiminstruksi-instruksikyang kemudian diterjemahkan oleh
browser yang ada dikomputer client sehinggahisi formasinyamdapat ditampilkan
secara visualkdikomputer pengguna (Kustiyahningsih & Anamisa, 2011).

8
Struktur dasar pada HTML ada 3, yaitu element, tag, dan atribut.
a. Padahelement, terdapath3 bagian, yaitu tag pembuka, isi,hdan penutup
yang dituliskan dalam format sepertihpada contoh dibawah ini.
<title>Contoh Judul</title>

b. Tag merupakanbteks berupa duafkarakter < dan >. Contoh penggunaan


tag adalah <head>, <body>, <title>, dan <html>.
c. Atribut merupakanhscript yang berada di dalam sebuahhelemen yang
memiliki fungsihuntuk memberikanninformasi tambahanqmengenai
elemen tersebut. Nilai dari suatuaatribut harus ditutupvdengan tanda
kutip.

2.6 Javascript
Javascript merupakan bahasa pemrograman komputer yang memiliki tujuan
untuk menambah interaksi di dalam sebuah website. Bahasa Javascript tidak sama
dengan bahasa pemrograman Java. Javascript pada awal mulanya memiliki nama
LiveScript, namun kemudian mengubah namanya menjadi Javascript. Program
pada Javasctipt terdiri dari statement danvexpression yang diinterpretasi oleh web
browser (Suehring, 2013).

2.7 MySQL
MySQL merupakan sebuah sistem dalam memanajemen database
SQLaopen source yang didukung dan dikembangkan oleh MySQL AB (Tjahyadi, et
al., 2007). Program pada client MySQL dapat memungkinkan untuk melakukan
perintah query ke server MySQL. Program client MySQL dapat dijalankan melalui
command-line. Fitur-fitur utama yang pada MySQL adalah :
1. MySQL merupakan relational database managaement system.
2. Perangkat Lunak MySQL adalah open source.
3. Database server dapat berjalan dengan cepat dan mudah digunakan.
4. Berjalan padagclient/ server atau pada embedded sytem. (Tjahyadi, et
al., 2007)

2.8 SDLC (System Development Life Cycle)


System Development Life Cycle (SDLC) atau Siklus Hidup Pengembangan
Sistem adalah suatu metode yang dapat digunakan dalam pengembangan sistem
tradisional yang sebagian besar digunakan oleh organisasi pada saat ini, terdiri dari
kerangka-kerangka yang terstruktur dan berisi tahapan bagaimana sistem
dikembangkan (Turban, et al., 2003). SDLC memiliki beberapa metode yang dapat
digunakan dalam pengembangan sistem, yaitu : prototyping, V model, Waterfall,
Spiral, Metode Formal, dan Extreme Programming. Pada pengembangan
perangkat lunak ini, metode yang digunakan adalah Waterfall Method.

9
2.8.1 Metode Waterfall
Metode waterfall adalah metode pengembangan sistem yang digunakan
pada penelitian ini. Model SDLC air terjun (waterfall) menyediakan pendekatan
alur hidup perangkat lunak secara sekuensial atau urut dimulai dari analisis,
desain, pengkodean, pengujian dan tahap support (Rosa & Shalahuddin, 2011).
Waterfall adalah model klasik yang bersifatasistematis, berurutanddalam
membangunvsoftware. Menurut (Sommerville, 2011) dalamdmenggunakan
metode waterfall, ada beberapa langkah-langkah yang harus dilakukan. Berikut
merupakan tahapan-tahapan metode waterfall :

Gambar 2.1 Model Waterfall


Sumber : (Sommerville, 2011)
1. Requirement / Analisa Kebutuhan
Pada tahap ini, pengembang perlu-0p melakukan komunikasi untuk dapat
memahami perangkat lunak seperti apa yang diharapkan oleh pengguna,
memahami segala kebutuhan dari pengguna, dan batasan-batasan dalam
membuat perangkat lunak tersebut. Komunikasi yang dilakukan bisa berupa
wawancara, diskusi, ataupun survei. Setelah mengumpulkan informasi,
pengembang dapat menganalisis kebutuhan yang dibutuhkan pada perangkat
lunak.
2. System Design /Desain Sistem
Segala analisa kebutuhan yang telah diperoleh dari tahap selanjutnya, akan
digunakan pada tahap ini untuk menentukan desain sistem yang akan diterapkan
pada perangkat lunak. Dari Desain Sistem, dapat digambarkan arsitektur dari
sistem, perangkat lunak yang digunakan, dan sistem persyaratannya.
3. Implementation/ Implementasi
Pada tahap ini, sistem pertama kali dikembangkan di program kecil yang
disebut unit, yang terintegrasi dalam tahap selanjutnya. Setiap unit dikembangkan
dan diuji untuk fungsionalitas yang disebut sebagai unit testing.
4. Integration & Testing / Integrasi & Pengujian
Pada tahap ini, segala unit yang telah dikembangkan pada tahap sebelumnya
akan di integrasikan ke dalam sistem, kemudian dilakukan pengujian yang

10
dilakukan oleh masing-masing unit untuk mengecek setiap kesalahan dan
kecocokan.
5. Operation & Maintenance / Operasi & Pemeliharaan
Setelah perangkat lunak berhasil dibuat dan dijalankan dengan baik, perlu
diadakannya tahap pemeliharaan. Segala kesalahan yang ditemukan pada tahap
pengujian, akan diperbaiki pada tahap pemeliharaan. Perbaikan dari unit sistem
yang dilakukan ini bertujuan untuk meningkatkan kinerja dan kehandalan dari
sistem.
Keunggulan yang dimiliki dari metode Waterfall ini adalah
1. Penerapannya lebih mudah
2. Kemudahan dalam mendefinisikan kebutuhan sistem pada awal proyek.
3. Dengan pendefinisian kebutuhan sistem di awal proyek, maka akan
menghemat dana, waktu, dan usaha.
4. Proses pengembangan model fase one by one, dapat meminimalisir
kesalahan yang mungkin akan terjadi.
Kekurangan dari metode waterfall adalah :
1. Susah untuk melakukan revisi/perubahan jika terjadi kesalahan dalam
berbagai tahapannya, karna bersifat aliran dan kaku yang berarti akan
terus jalan dan akan sangat susah kembali ke belakang atau tahap
sebelumnya.
2. Biasanya digunakan untuk rekayasa sistem yang besar misalnya proyek
yang dikerjakan di beberapa tempat berbeda dan dibagi menjadi
beberapa sub proyek

2.9 UML (Unified Modelling Language)


Unified Modelling Language (UML) merupakan bahasa standar dalam
merancang, menggambarkan, dan mendokumentasikan sistem perangkat lunak
(Dharwiyanti & Wahono, 2003). UML digunakan untuk membuat model dan
mempermudahkan dalam proses pengembangan perangkat lunak. Dengan
melihat dokumentasi dari UML, proses penelusuran dan pembelajaran dari kode
program suatu sistem dapat dilakukan dengan lebih mudah.UML juga digunakan
sebagai alat bantu dalam transfer pengetahuan tentang sistem antar developer
yang mengembangkan sistem.

2.9.1 Use Case Diagram


Use Case Diagram merupakan penggambaran dari fungsionalitas
sebuah sistem dengan menekankan “apa” yang dilakukan dan bukanlah
“bagaimana”. Use case digunakan sebagai representasi dari bagaimana
interaksi yang terjadi antara aktor yang terlibat dengan sistem. Menyusun
kebutuhan dari sebuah sistem dapat dilakukan dengan lebih mudah dengan
menggunakan Use Case Diagram (Dharwiyanti & Wahono, 2003).

11
Gambar 2.2 Contoh Use Case Diagram
Sumber : (Dharwiyanti & Wahono, 2003)
Gamabr 2.2 merupakan sebuah contoh dari use case diagram. Terdapat 4
aktor, 3 jenis asosiasi yaitu, extend, include, dan generalisasi. Extend digunakan
ketika sebuah use case berjalan di bawah suatu kondisi tertentu. Include
digunakan ketika sebuah use case hanya dapat dilakukan ketika use case induk
telah dijalankan. Generalisasi digunakan untuk menggambarkan aksi yang lebih
umum dan dapat mewarisi sifat dari induk.

2.9.2 Sequence Diagram


Sequence Diagram merupakan representasi dari interaksi antar objek yang
di dalam atau sekitar sistem (seperti display, pengguna, dan sebagainya)
(Dharwiyanti & Wahono, 2003). Sequence Diagram digunakan sebagai
penggambaran dari skenario yang dilakukan objek melalui waktu hidup objek dan
pesan yang dikirim dan diterima oleh objek. Komponen-komponen dalam
sequence digaram yaitu :
Tabel 2.1 Komponen Sequence Diagram
Gambar Keterangan
Entity class merupakan bagian kelas yang menjadi sebuah
landasan dalam menyusun database.
Boundary class merupakan bagian kelas yang menjadi
tampilan antara sistem dan aktor.
Control class merupakan bagian yang berisi logika dan
sebagai penghubung antar entity dan boundary class.

12
Message merupakan simbol untuk mengirimkan pesan antar
objek.
Recursive merupakan simbol untuk melakukan pengiriman
pesan terhadap dirinya sendiri.
Activation merupakan penggambaran eksekusi sebuah
operasi dari objek.

2.9.3 Class Diagram


Class Diagram merupakan diagram yang digunakan untuk menggambarkan
hubungan antara kelas yang satu dengan kelas yang lain dan komponen dari kelas
tersebut (Hendini, 2016). Dengan Class Diagram akan ditunjukkan komponen kelas
seperti atribut dan operasi yang ada di dalamnya. Class Diagram terdiri dari class,
relasi asosiasi, relasi agregasi, relasi generalisasi, atribut, operasi, dan visibility dari
operasi dan atribut.

2.10 MVC (Model View Controller)


MVC merupakan suatu metode dalam pemrograman yang memisahkan
antara logika tampilan, pengontrolan, dan pemodelan. MVC memiliki tujuan untuk
memudahkan maintenance terhadap perangkat lunak, sehingga ketika ada
perubahan/perbaikan tidak akan terasa begitu menyusahkan. MVC (Model View
Controller) dibagi menjadi 3 komponen yaitu, model adalah komponen yang
mengatur proses pertukaran data pada database, View adalah komponen yang
menangani interface/ halaman yang ditampilkan kepada pengguna, dan Control
adalah komponen yang berisi instruksi yang menghubungkan model dan view
(Deacon, 2009).

2.11 Codeigniter
Menurut (Hakim, 2010), codeigniter merupakan sebuah framework php yang
bersifat opensource dan dapat membantu developer dalam membangun sebuah
aplikasi web berbasis PHP. Codeigniter menerapkan metode MVC (Model, View,
Controller). Framework ini memiliki tujuan untuk dapat memudahkan developer
dalam membangun sebuah sistem berbasis web.
Kelebihan codeigniter adalah :
1. Tidak dikenakan biaya dalam penggunaaannya
2. Syntax yang terstruktur
3. Mudah digunakan
4. Sedikit konfigurasi
5. Tersedianya fasilitas helper dan library
6. Memiliki tingkat keamanan yang bagus.

13
Kekurangan codeigniter adalah :
1. Tidak dapat digunakan untuk membangun web berskala besar
2. Keterbatasan library

2.12 Pengujian Perangkat Lunak


Pengujian perangkat lunak merupakan suatu proses dalam menemukan error
pada perangkat lunak sebelum perangkat lunak itu akan dikirim kepada pengguna
yang memiliki tujuan untuk menguji kemampuan dari program dan memastikan
bahwa program yang dibangun telah memenuhi hasil yang diharapkan (Rouf,
2012). Pengujian perangkat lunak sangatlah diperlukan dalam pengembangan
perangkat lunak karena akan ditemukan kesalahan dari sistem perangkat lunak
tersebut dan membuat programmer mengetahui apa yang harus dikerjakan
olehnya kemudian.
Pengujian dilakukan dengan cara mengevaluasi konfigurasi perangkat lunak
yang terdiri dari spesifikasi kebutuhan, deskripsi perancangan, dan program yang
dihasilkan. Hasil evaluasi kemudian dibandingkan dengan hasil uji yang
diharapkan, apakah kebutuhan telah terpenuhi atau apakah perangkat lunak telah
berjalan sesuai dengan yang diharapkan. Apabila ditemukan kesalahan, maka akan
dilakukan pengujian ulang dengan melakukan perbaikan dari kesalah yang
ditemukan di perangkat lunak. Dalam pengujian perangkat lunak, terdapat dua
teknik yang dapat dilakukan untuk menguji perangkat lunak, yaitu teknik black box
testing dan white box testing, yaitu (Khan, 2010);

2.12.1 White box Testing


White box testing adalah cara pengujian dengan melihat kedalam modul
untuk meneliti kode-kode program yang ada, dan menganalisa apakah ada
kesalahan atau tidak. Pengujian ini dilakukan untuk dapat mengetahui cara kerja
dari perangkat lunak secara internal dan juga memastikan seluruh operasi yang
ada dapat berjalan sesuai dengan spesifikasi yang sudah ditetapkan sebelumnya.
Pengujian white box dilakukan berdasarkan pada bagimana perangkat lunak
menghasilkan output dari input.

2.12.2 Black box Testing


Menurut (Pressman, 2010), black box testing merupakan pengujian yang
difokuskan kepada kebutuhan perangkat lunak dari sistem atau bisa juga disebut
dengan behavioral Testing. Pengujian ini berfokus pada persyaratan fungsionalitas
sistem. Black box testing merupakan tahapan pelengkap setelah White box
testing.
Black box testing cenderung untuk menemukanahal-hal seperti berikut
(Pressman, 2010):
1. Fungsi yangltidak benar atau tidak ada.
2. Kesalahanaantarmuka (interface errors).
3. Kesalahan padaastruktur data dan akses basis data.
4. Kesalahangperformansi (performance errors)
5. Kesalahan inisialisasi danpterminasi.

14
2.13 Google Maps API
Google Maps API merupakan fitur dari Google Maps yang dapat digunakan
dalam memudahkan pengguna dalam menggunakan fitur yang terdapat pada
Google Maps. Fitur pada Google Maps yang digunakan adalah menampilkan peta,
membuat marker untuk menunjukkan posisi, dan lain-lain. Google Maps
webservice memiliki fitur Google Maps Geocoding API. Google Maps Geocoding
API merupakan layanan yang menyediakan fitur untuk geocoding dan geocoding
terbalk.
Geocoding merupakan proses dalam mengkonversi alamat (nama jalan)
menjadi bentuk koordinat geografis yang memiliki lintang dan bujur, kemudian
titik koordinat akan diposisikan pada peta dan diberi tanda marker pada peta.
Geocoding terbalik merupakan proses dalam mengkonversi koordinat geografis
menjadi bentuk alamat (nama jalan).
Cara menggunakan Google Maps API adalah dengan mengikuti langkah-
langkah berikut ini (Shodiq, 2009) :
1. Memasukkan Google Maps API Javascript ke dalam kode HTML.
<script type="text/javascript"
src="http://maps.google.com/maps/api/js?sensor=true&key=YOUR_API_KEY"
></scri
pt>
<script type="text/javascript">

2. Membuat elemen kanvas map untuk menampilkan peta.


<div id="map_canvas" style="width:600px; height:600px"></div>

3. Membuat objek untuk menyimpan properti-properti pada peta.


var map = new google.maps.Map(document.getElementById("map_canvas"),
myOptions);

4. Menulis fungsi JavaScript untuk membuat objek peta.


function initialize() {
var latlng = new google.maps.LatLng(-6.4, 106.8186111);
var myOptions = {
zoom: 13,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};

5. Inisialisasi peta di dalam body HTML dengan event onload.


<body onload="initialize()">

15
BAB 3 METODOLOGI PENELITIAN

Pada bab ini akan diuraikan langkah-langkah perencanaan penelitian yang


akan dilakukan untuk menyelesaikan penelitian ini. Metode penelitian digunakan
sebagai landasan atau pedoman dalam pengerjaan penelitian. Langkah-langkah
yang diambil adalah studi literatur, analisis kebutuhan, perancangan sistem, dan
pengambilan kesimpulan danasaran. Diagram alirmmetodologi penelitian ini
dapat dilihat pada Gambara3.1.

Gambar 3.1 Diagram AlirlPenelitian

16
3.1 Studi Literatur
Studi literatur berisikan studi kepustakaan yang dapat menunjang penulisan
penelitian ini. Sumber yang digunakan berasal dari buku, berbagai jurnal ilmiah,
situs dan tulisan yang berhubungan dengan analisis dan perancangan sistem. Teori
dan pustaka yang sesuai dengan penelitian ini adalah :
1. Bank Sampah Malang
2. Sistem
3. PHP
4. HTML (Hyper Text Markup Language)
5. Javascript
6. MySQL
7. SDLC (System Development Life Cycle)
8. UML (Unified Modelling Language)
9. MVC (Model View Controller)
10. Codeigniter
11. Pengujian Perangkat Lunak
12. Google Maps API

3.2 Analisis Kebutuhan


Analisis kebutuan dilakukan dengan mengidentifikasi segala kebutuhan yang
dibutuhkan oleh pengguna pada sistem aplikasi transaksi bank sampah online.
Tahapan analisis kebutuhan yang dilakukan adalah dengan melalui observasi/studi
lapangan untuk mengumpulkan data-data terkait bank sampah malang dengan
mengamati secara langsung bagaimana proses bisnis dan perilaku dari pihak-pihak
yang terlibat dalam transaksi. Kemudian dilakukan wawancara untuk dapat
mengumpulkan permasalahan yang biasanya didapatkan oleh pelaku yang terlibat
dalam proses transaksi. Analisis kebutuhan terdiri dari gambaran umum perangkat
lunak, identifikasi aktor yang terlibat dalam sistem ini, identifikasi kebutuhan
fungsionalmdan nonfungsional, identifikasi use case diagram,mdan use case
scenario.

3.3 Perancangan Sistem


Perancangan sistem akan dilakukanasetelah semua kebutuhan dari sistem
telah dipaparkan dengan jelas sehingga proses perancangan sistem dapat
dilakukan dengan baik sesuai dengan kebutuhan dari pengguna. Dari semua
kebutuhan yang sudah diperoleh, kemudian akan dimodelkan dalam bentuk UML
(Unified Modeling Language). Pemodelan UML yang akan dilakukan adalah
perancangan SequencemDiagram, perancangan ClasskDiagram, perancangan
komponen, perancangan Basis Data, danpperancangan antarmuka.

17
3.4 Implementasi
Pada tahap implementasi akan dilakukan dengan mengubah hasil
perancangandyang telah dilakukan pada tahap sebelumnya dalam bentuk kode-
kode pemrograman. Menggabung unit-unit dan modul-modul membentuk satu
sistem perangkat lunak.iImplementasiaperangkat lunak ini akan dibuat berbasis
web dengan menggunakanabahasa pemrogramanmPHP, HTML, Javascript,
basisadataaMySQL, dan framework Codeigniter.

3.5 Pengujian
Pengujian akan dilakukan untuk menemukan kesalahan pada perangkat lunak
dan menguji apakah semua kebutuhan sudah sesuai dengan permintaaan user.
Bentuk pengujian yang akan dilakukan adalah dengan menggunakan metode Black
box Testing dan White box testing. Pengujian akan dilakukan pada setiap level
perangkat lunak seperti pengujian unit dan pengujian validasi. Serta dilakukan
pengujian compatibility untuk menguji apakah sistem mampu berjalan di berbagai
web brower yang berbeda. Jika selama pengujian ditemukan kesalahan ataupun
ada kebutuhan yang tidak berjalan dengan semestinya, maka akan dilakukan
perbaikan dari kesalahan-kesalahan tersebut.

3.6 Pengambilan Kesimpulan dan Saran


Pengambilanakesimpulan dan saran dilakukanasetelah semuaatahapan
dalam penyusunan penelitian ini selesai. Dari hasil perancangansdan pengujian
dapat diperolehdkesimpulan. Sedangkan saranmakan didapatkanmsetelah
mengevaluasi kesalahan yang terdapat pada penelitian ini. Saran yang diberikan
bertujuan untuk menyempurnakanghasil tulisangserta masukanmterhadap
pengembangansperangkat lunakaini nantinya.

18
BAB 4 ANALISIS KEBUTUHAN

Analisis kebutuhan merupakan suatu tahapan awal dalam pembangunan


sistem. Analisis kebutuhan ini dilakukan untuk dapat menentukan kebutuhan-
kebutuhan yang harus ada pada sistem aplikasi transaksi bank sampah online ini.
Kebutuhan-kebutuhan ini diperoleh dari hasil studi lapangan di kantor Bank
Sampah Malang dengan teknik wawancara dan observasi. Analisis kebutuhan ini
juga menjelaskan siapa saja aktor-aktor yang terlibat pada sistem, kemudian apa
saja yang dapat dilakukan oleh aktor-aktor tersebut terhadap sistem, dan interaksi
yang terjadi antar aktor dengan sistem.

4.1 Deskripsi Sistem


Sistem Aplikasi Transaksi Bank Sampah Online merupakan suatu sistem yang
dibuat dengan tujuan utama untuk dapat membantu menghubungkan nasabah
BSM dengan petugas BSM terutama Petugas Administrasi dan Petugas Divisi
Penjemputan Sampah. Sistem ini dibangun berbasis web sehingga dapat diakses
oleh pengguna dari berbagai perangkat pendukung melalui jaringan internet.
Sistem ini memiliki beberapa fungsi seperti nasabah dapat melihat transaksi
penyetoran dan penarikan saldo yang tercatat pada buku tabungan mereka secara
online, dan juga dapat melakukan pemesanan jemput sampah berdasarkan lokasi
yang ditentukan oleh nasabah dengan menggunakan google maps. Dari sisi
petugas sistem ini memiliki fungsi untuk dapat merekap data transaksi seperti
penyetoran sampah, penarikan saldo, dan penjadwalan jemput sampah.

4.2 Identifikasi Aktor


Identifikasi aktor menjelaskan tentang peran-peran dari aktor yang terlibat
dalam sistem. Aktor-aktor ini didapatkan berdasarkan hasil observasi pada saat
studi lapangan. Berdasarkan hasil observasi, pada sistem ini terdapat empat peran
aktor yaitu pengunjung, nasabah, admin, dan driver. Identifikasi aktor dijelaskan
pada Tabel 4.1 yang terdiri dari kolom no, nama aktor, dan deskripsi yang
menjelaskan kegiatan dari aktor.
Tabel 4.1 Identifikasi Aktor Sistem
No Nama Aktor Deskripsi
1 Pengunjung Pengunjung adalah aktor yang mengakses halaman web
tetapi belum melakukan login dan hanya dapat
menggunakan fitur-fitur sebagai tamu web BSM. Fitur-
fitur tersebut seperti cek harga BSM, info seputar nasabah
BSM, profil dari BSM, cara mendaftar, dan juga login.
2 Nasabah Nasabah adalah aktor yang merupakan nasabah dari BSM
dan akunnya telah terdaftar pada BSM. Nasabah dapat
melihat buku tabungan secara online, melakukan
pemesanan jemput sampah secara online dengan

19
memasukkan lokasi dari nasabah, dan mengubah
password akun nasabah.
3 Admin Admin adalah aktor yang merupakan petugas
administrator dari BSM dan memiliki hak untuk dapat
mengelola seluruh data transaksi penyetoran dan
penarikan, mengelola akun dari nasabah dan petugas, dan
mengelola penjemputan sampah dari nasabah.
4 Driver Driver adalah aktor yang merupakan petugas dari divisi
penjemputan sampah BSM dan memiliki tugas khusus
dalam melakukan penjemputan sampah yang dipesan
oleh nasabah.

4.2 Kebutuhan Fungsional


Kebutuhanbfungsional adalah kebutuhan utama yang harus dapat disediakan
sistem dan dapat diakses oleh pengguna. Dari hasil elisitasi kebutuhan yang telah
dilakukan, diperoleh kebutuhan-kebutuhan fungsional yang diharapkan oleh
pengguna. Kebutuhan fungsional dari sistem ini berjumlah 32 kebutuhan dan
dijabarkan dalam bentuk Tabel 4.2 dengan kategori kode dari kebutuhan, aktor
yang bersangkutan, dan deskripsi dari kebutuhan.
Tabel 4.2 KebutuhanlFungsional
No Kode Aktor Deskripsi Kebutuhan
1 BSM_F_0100 Pengunjung Sistem harus dapat menyediakan fungsi
login kepada pengunjung, sehingga
pengunjung dapat mengakses sistem
sebagai admin, nasabah, atau driver.
1.1 BSM_F_0101 Pengunjung Formulir login harus terdiri dari username
dan password dengan jumlah enam
karakter.
2 BSM_F_0200 Pengunjung Sistem harus dapat membantu pengguna
dalam mengingat kembali password dari
akun yang dimiliki pengguna.
2.1 BSM_F_0201 Pengunjung Formulir yang harus diisi adalah
username dari pengguna yang telah
terdaftarkan sebelumnya.
2.2 BSM_F_0202 Pengunjung Password baru milik pengguna harus
dapat dikirim ke alamat email pengguna.
3 BSM_F_0300 Pengunjung Sistem harus dapat menampilkan profil
dari BSM kepada pengunjung.
4 BSM_F_0400 Pengunjung Sistem harus dapat menampilkan info-
info mengenai nasabah BSM.

20
4.1 BSM_F_0401 Pengunjung Pada halaman info nasabah terdapat info
mekanisme pendaftaran sebagai nasabah
BSM.
5 BSM_F_0500 Pengunjung Sistem harus dapat menampilkan daftar
harga sampah yang berlaku di BSM
kepada pengunjung.
6 BSM_F_0600 Nasabah Sistem harus dapat menampilkan detail
profil dari akun nasabah.
6.1 BSM_F_0601 Nasabah Informasi yang terkandung pada profil
akun adalah nama nasabah, nomor
rekening, alamat, email, tipe nasabah,
dan saldo.
6.2 BSM_F_0602 Nasabah Halaman untuk melihat detail profil
merupakan halaman utama nasabah.
7 BSM_F_0700 Nasabah Sistem harus dapat menampilkan riwayat
transaksi dari buku tabungan kepada
nasabah.
7.1 BSM_F_0701 Nasabah Informasi yang ditampilkan pada buku
tabungan harus terdiri dari tanggal
transaksi, nomor nota, debet, kredit, dan
saldo.
8 BSM_F_0800 Nasabah Sistem harus menyediakan fitur untuk
dapat memesan penjemputan sampah
kepada nasabah.
8.1 BSM_F_0801 Nasabah Formulir layanan jemput sampah harus
terdiri dari ID Penjemputan, nomor
rekening, alamat pengambilan, kloter
pengambilan, tanggal pengambilan, dan
nomor HP dari nasabah.
8.2 BSM_F_0802 Nasabah Sistem harus dapat menampilkan google
maps dan mengambil lokasi penjemputan
berdasarkan inputan dari nasabah.
9 BSM_F_0900 Nasabah Sistem harus dapat menampilkan seluruh
riwayat penjemputan sampah yang
pernah dipesan oleh nasabah.
9.1 BSM_F_0901 Nasabah Informasi yang ditampilkan adalah id
penjemputan, tanggal penjemputan,
alamat, dan status penjemputan.
10 BSM_F_1000 Nasabah Sistem harus dapat menampilkan info
berupa detail status dari penjemputan
sampah.
11 BSM_F_1100 Nasabah Sistem harus dapat menampilkan data
seluruh riwayat transaksi penyetoran
sampah milik nasabah.

21
11.1 BSM_F_1101 Nasabah Informasi yang terkandung pada tabel
data transaksi penyetoran sampah adalah
nomor nota, tanggal penyetoran, nomor
rekening, dan total kredit dari transaksi
yang dilakukan.
12 BSM_F_1200 Nasabah Sistem harus dapat menampilkan data
detail dari transaksi penyetoran sampah
nasabah.
12.1 BSM_F_1201 Nasabah Informasi yang terkandung pada data
detail transaksi penyetoran adalah nomor
nota, tanggal penyetoran, nomor
rekening, status penyetoran, kode
sampah, jenis sampah, berat sampah,
harga jual sampah, dan total kredit dari
transaksi yang dilakukan.
13 BSM_F_1300 Nasabah, Sistem harus dapat menyediakan fungsi
Admin, untuk dapat mengubah password dari
Driver akun yang dimiliki nasabah/admin/driver.
13.1 BSM_F_1301 Nasabah,
Formulir yang harus disediakan adalah
Admin,
password lama dan password baru.
Driver
14 BSM_F_1400 Nasabah,
Sistem harus dapat mengeluarkan
Admin,
nasabah/admin/driver dari sistem.
Driver
14.1 BSM_F_1401 Nasabah, Sistem harus menampilkan halaman
Admin, utama dari pengunjung setelah berhasil
Driver keluar dari sistem.
15 BSM_F_1500 Admin Sistem harus dapat membuat akun
nasabah dan petugas baru.
15.1 BSM_F_1501 Admin Formulir yang harus diisi adalah tipe
akun, nama, alamat, nomor HP, dan email
dari pengguna.
15.2 BSM_F_1502 Admin Password dari akun yang telah dibuat
harus dapat dikirim kepada pemilik akun
melalui email yang terdaftar.
15.3 BSM_F_1503 Admin Password harus terdiri dari 6 karakter.
16 BSM_F_1600 Admin Sistem harus dapat menampilkan data
seluruh akun nasabah yang terdaftar.
16.1 BSM_F_1601 Admin Informasi yang terkandung pada tabel
data akun nasabah adalah nama nasabah,
nomor rekening sebagai username,
alamat, email, nomor HP, tipe nasabah,
dan saldo.
17 BSM_F_1700 Admin Sistem harus dapat membuat perubahan
data pada akun nasabah.

22
17.1 BSM_F_1701 Admin Informasi yang harus ditampilkan pada
halaman untuk mengubah data akun
nasabah adalah tipe nasabah, nomor
rekening sebagai username, nomor HP,
nama nasabah, alamat, dan email.
17.2 BSM_F_1702 Admin Data nasabah yang dapat diubah oleh
admin adalah nama, alamat, nomor HP,
dan email dari nasabah.
18 BSM_F_1800 Admin Sistem harus dapat menghapus akun
nasabah yang terdaftar.
19 BSM_F_1900 Admin Sistem harus dapat menampilkan data
seluruh akun petugas yang terdaftar.
19.1 BSM_F_1901 Admin Informasi yang terkandung pada tabel
data akun petugas adalah nama petugas,
username, email, dan alamat.
20 BSM_F_2000 Admin Sistem harus dapat membuat perubahan
data pada akun petugas.
20.1 BSM_F_2001 Admin Informasi yang harus ditampilkan pada
halaman untuk mengubah data akun
petugas adalah tipe petugas, username,
nama, alamat, dan email.
20.2 BSM_F_2002 Admin Data petugas yang dapat diubah oleh
admin adalah nama, alamat, dan email
dari petugas.
21 BSM_F_2100 Admin Sistem harus dapat menghapus akun
petugas yang terdaftar.
22 BSM_F_2200 Admin Sistem harus dapat menyediakan sarana
untuk dapat verifikasi transaksi
penyetoran nasabah.
23 BSM_F_2300 Admin Sistem harus dapat menampilkan data
seluruh riwayat transaksi penyetoran
sampah dari semua nasabah.
23.1 BSM_F_2301 Admin Informasi yang terkandung pada tabel
data transaksi penyetoran sampah adalah
nomor nota, tanggal penyetoran, nomor
rekening, dan total kredit dari transaksi
yang dilakukan.
24 BSM_F_2400 Admin Sistem harus dapat menampilkan data
detail dari transaksi penyetoran sampah.
24.1 BSM_F_2401 Admin Informasi yang terkandung pada data
detail transaksi penyetoran adalah nomor
nota, tanggal penyetoran, nomor
rekening, kode sampah, jenis sampah,
berat sampah, harga jual sampah, dan
total kredit dari transaksi yang dilakukan.

23
25 BSM_F_2500 Admin Sistem harus dapat menghapus data
transaski penyetoran sampah.
26 BSM_F_2600 Admin Sistem harus dapat membuat data
transaksi penarikan saldo tabungan.
26.1 BSM_F_2601 Admin Formulir yang ada pada halaman buat
penarikan saldo adalah ID penarikan,
tanggal penarikan, nomor rekening, saldo
dari nasabah, dan jumlah debet.
27 BSM_F_2700 Admin Sistem harus dapat menampilkan data
seluruh riwayat transaksi penarikan saldo
dari nasabah.
27.1 BSM_F_2701 Admin Informasi yang terkandung pada tabel
data transaksi penarikan saldo adalah ID
penarikan, tanggal penarikan, nomor
rekening, dan total saldo yang ditarik oleh
nasabah dari tabungannya.
28 BSM_F_2800 Admin Sistem harus dapat menghapus data
transaski penarikan saldo.
29 BSM_F_2900 Admin, Sistem harus dapat menampilkan data
Driver penjemputan sampah yang telah dipesan
oleh nasabah.
29.1 BSM_F_2901 Admin, Informasi yang terkandung pada tabel
Driver penjemputan sampah harus terdiri dari id
penjemputan, nomor rekening, nomor
HP, alamat, tanggal pengambilan, dan
status penjemputan.
30 BSM_F_3000 Admin, Sistem harus dapat menampilkan data
Driver detail dari penjemputan sampah.
30.1 BSM_F_3001 Admin, Informasi yang ditampilkan adalah id
Driver penjemputan, nomor rekening, nomor
HP, alamat, tanggal, kloter pengambilan,
status penjemputan, dan lokasi
penjemputan.
30.2 BSM_F_3002 Admin, Sistem harus dapat melihat lokasi dari
Driver alamat pengambilan yang diinputkan
oleh nasabah dengan menggunakan
Google Maps.
31 BSM_F_3100 Admin, Sistem harus dapat mengubah status dari
Driver penjemputan sampah.
32 BSM_F_3200 Driver Sistem harus dapat membuat data
transaksi penyetoran sampah baru.
32.1 BSM_F_3201 Driver Formulir yang harus tersedia pada
halaman untuk membuat data transaksi
penyetoran sampah adalah nomor nota,
tanggal penyetoran, nomor rekening,

24
kode sampah, berat sampah, harga jual
sampah, sub total, dan total kredit dari
transaksi yang dilakukan.
32.2 BSM_F_3202 Driver Data sampah yang disetor nasabah dapat
berjumlah lebih dari satu jenis sampah.

4.3 Kebutuhan Non-Fungsional


Kebutuhan nonbfungsional merupakan daftar kebutuhan-kebutuhan yang
berkaitan dengan kualitas dan batasan yang dimiliki sistem. Kebutuhan fungsional
yang harus dimiliki Sistem Aplikasi Transaksi Bank Sampah Online dijabarkan
dalam bentuk Tabel 4.3.
Tabel 4.3 Kebutuhan Non Fungsional
No Kode Parameter Deskripsi Kebutuhan
1 BSM_NF _01 Compatibility Sistem dapat berjalan dengan baik pada
web browser yang berbeda-beda

4.4 Diagram Use Case


Diagram use casenmerupakan suatu diagram yang memodelkan perilaku
dari aktor terhadap sistem, menggambarkan apa saja yangadapat dilakukan oleh
aktoraterhadap sistem. Aktor yang terdapat dalam sistem aplikasi transaksi bank
sampah online ini ada empat, yaitu pengunjung, nasabah, driver, dan admin.
Perilaku dari masing-masing aktor digambarkan dalam bentuk diagram use case
seperti pada Gambar 4.1.

25
Gambar 4.1 Diagram Use Case Sistem

4.5 Skenario Use Case


Skenario use case merupakan uraian dari alur kegiatan yang terjadi saat
pengguna menggunakan sistemfdangdikategorikan menurutause case yang telah
dibuat. Skenario use case dijabarkan dengan menggunakan tabel yang terdiri dari
actor, objective,mpre-condition, main flow, alternative flow, dan post-condition.
Terdapat dua puluh sembilan skenario use case yang akan dijabarkan pada Tabel
4.4 sampai dengan Tabel 4.35.

26
Tabel 4.4 Skenario Use Case Login
Actor Pengunjung
Objective Mengizinkan aktor untuk memiliki hak akses sistem
dengan mengenali aktor yang melakukan login.
Pre-Condition Aktor telah membuka halaman login.
Main Flow 1. Aktor mengisi data username dan password dengan
lengkap.
2. Aktor menekan tombol login pada form.
3. Sistem memeriksa validitas data aktor.
4. Sistem menampilkan halaman utama aktor.
Alternative Flow 1. Jika data username ataumpassword tidak valid, maka
sistem menampilkan pesan error bahwa login gagal
dan menampilkan halaman utama pengunjung.
2. Jika terdapat kolom yang tidak terisi, maka sistem
menampilkan pesan error dan pemberitahuan untuk
mengisi kolom yang kosong.
Post-Condition Sistem menampilkan halaman utama sesuai dengan aktor
yang berhasil dikenali.

Tabel 4.5 Skenario Use Case Lupa Password


Actor Pengunjung
Objective Mengizinkan aktor untuk dapat mengetahui kembali
password dari akun yang dimiliki
Pre-Condition Aktor telah membuka halaman login.
Main Flow 1. Aktordmenekan tombol menu Lupa Password.
2. Sistem menampilkan halaman lupa password.
3. Aktor mengisi data username miliknya.
4. Aktor menekan tombol kirim
5. Sistem mengirimkan password ke alamat email
pengguna.
Alternative Flow 1. Jika kolom username tidak terisi dan aktor menekan
tombol kirim maka, sistem menampilkan pesan error
dan pemberitahuan untuk mengisi username.
2. Jika aktor menekan tombol Batal, maka sistem akan
menampilkan halaman utama aktor.
Post-Condition Sistem mengirimkan password ke alamat email pengguna
dan menampilkan halaman utama pengunjung.

27
Tabel 4.6 Skenario Use Case Melihat Profil BSM
Actor Pengunjung
Objective Mengizinkan aktor untuk dapat melihat info mengenai
profil dari Bank Sampah Malang.
Pre-Condition Aktor telah membuka halaman utama.
Main Flow 1. Aktor menekan tombol menu Profil BSM.
2. Sistem menampilkan halaman Profil BSM.
Alternative Flow -
Post-Condition Sistem menampilkan halaman profil BSM

Tabel 4.7 Skenario Use Case Melihat Info Nasabah


Actor Pengunjung
Objective Mengizinkan aktor untuk dapat melihat info mengenai
tipe-tipe nasabah dan mekanisme mendaftar menjadi
nasabah BSM.
Pre-Condition Aktor telah membuka halaman utama.
Main Flow 1. Aktordmenekan tombol menu Info Nasabah.
2. Sistem menampilkan halaman Info Nasabah.
Alternative Flow -
Post-Condition Sistem menampilkan halaman Info Nasabah.

Tabel 4.8 Skenario Use Case Cek Harga Sampah


Actor Pengunjung
Objective Mengizinkan aktor untuk dapat melihat info mengenai
harga sampah yang ada di Bank Sampah Malang.
Pre-Condition Aktor telah membuka halaman utama.
Main Flow 1. Aktor menekan tombol menu Cek Harga BSM.
2. Sistem menampilkan halaman Cek Harga BSM.
Alternative Flow -
Post-Condition Sistem menampilkan halaman Harga BSM.

Tabel 4.9 Skenario Use Case Melihat Profil Nasabah


Actor Nasabah
Objective Mengizinkan aktor untuk dapat melihat data profil dari
nasabah.
Pre-Condition Aktor telah login sebagai nasabah.
Main Flow 1. Aktor menekan tombol menu profil nasabah.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman profil nasabah.
Alternative Flow -
Post-Condition Sistem menampilkan halaman profil nasabah.

28
Tabel 4.10 Skenario Use Case Melihat Buku Tabungan
Actor Nasabah
Objective Mengizinkan aktor untuk dapat melihat seluruh riwayat
transaksi pada buku tabungan.
Pre-Condition Aktor telah login sebagai nasabah dan membuka halaman
utama.
Main Flow 1. Aktor menekan tombol menu buku tabungan
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman buku tabungan
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung
Post-Condition Sistem menampilkan data riwayat transaksi pada buku
tabungan.

Tabel 4.11 Skenario Use Case Memesan Jemput Sampah


Actor Nasabah
Objective Mengizinkan aktor untuk dapat melakukan pemesanan
jemput sampah dari nasabah.
Pre-Condition Aktor telah login sebagai nasabah dan membuka halaman
jemput sampah.
Main Flow 1. Aktor menekan tombol Pesan Jemput Sampah.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman pesan jemput
sampah.
4. Aktor mengisi data alamat pengambilan,
menentukan titik lokasi penjemputan, kloter
penjemputan, tanggal penjemputan, serta nomor
HP nasabah.
5. Aktor menekan tombol Buat Pesanan.
6. Sistem menyimpan data pada database.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika terdapat kolom yang tidak terisi, mala sistem
menampilkan pesan error dan pemberitahuan untuk
mengisi kolom yang kosong.
3. Jika aktor menekan tombol Batal, maka sistem
menampilkan halaman utama aktor.
Post-Condition Sistem menyimpan data penjemputan sampah pada
database dan menampilkan halaman melihat riwayat
penjemputan sampah.

29
Tabel 4.12 Skenario Use Case Melihat Riwayat Jemput Sampah
Actor Nasabah
Objective Mengizinkan aktor untuk dapat melihat seluruh riwayat
penjemputan sampah yang pernah dilakukan oleh
nasabah.
Pre-Condition Aktor telah login sebagai nasabah dan membuka halaman
jemput sampah.
Main Flow 1. Aktor menekan tombol menu Jemput Sampah.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman jemput sampah.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan halaman melihat halaman
penjemputan sampah.

Tabel 4.13 Skenario Melacak Penjemputan Sampah


Actor Nasabah
Objective Mengizinkan aktor untuk dapat melihat detail status dari
penjemputan sampah dari salah satu pesanan jemput
sampah.
Pre-Condition Aktor telah login sebagai nasabah dan membuka halaman
jemput sampah.
Main Flow 1. Aktor menekan tombol menu Lihat penjemputan.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman detail penjemputan
sampah.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan halaman melihat halaman detail
penjemputan sampah.

Tabel 4.14 Skenario Use Case Melihat Riwayat Penyetoran


Actor Nasabah
Objective Mengizinkan aktor untuk dapat melihat seluruh riwayat
penyetoran sampah yang pernah dilakukan oleh nasabah.
Pre-Condition Aktor telah login sebagai nasabah dan membuka halaman
utama.
Main Flow 1. Aktor menekan tombol menu riwayat penyetoran
sampah.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman riwayat penyetoran
sampah.

30
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan data penyetoran sampah dari
nasabah.

Tabel 4.15 Skenario Use Case Melihat Detail Riwayat Penyetoran


Actor Nasabah
Objective Mengizinkan aktor untuk dapat melihat data detail dari
transaksi penyetoran sampah yang pernah dilakukan oleh
nasabah.
Pre-Condition Aktor telah login sebagai nasabah dan membuka halaman
melihat riwayat penyetoran sampah.
Main Flow 1. Aktor menekan tombol detail.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman detail penyetoran
sampah.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan data detail penyetoran sampah dari
nasabah.

Tabel 4.16 Skenario Use Case Mengubah Password


Actor Nasabah/ Admin/ Driver
Objective Mengizinkan aktor untuk dapat mengubah password lama
dari akun nasabah dengan password baru.
Pre-Condition Aktor telah login dan membuka halaman utama.
Main Flow 1. Aktor menekan tombol menu ubah password..
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman ubah password.
4. Aktor mengisi data password lama dan password
baru.
5. Aktor menekan tombol simpan perubahan.
6. Sistem menyimpan data pada database.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika terdapat kolom yang tidak terisi, maka sistem
menampilkan pesan error dan pemberitahuan untuk
mengisi kolom yang kosong.
3. Jika aktor menekan tombol Batal, maka sistem
menampilkan halaman utama aktor.
Post-Condition Sistem menyimpan data password baru di database dan
menampilkan halaman utama aktor.

31
Tabel 4.17 Skenario Use Case Logout
Actor Nasabah/ Admin/ Driver
Objective Mengizinkan aktor untuk dapat keluar dari sistem dan
menghapus hak akses aktor yang sedang masuk ke sistem.
Pre-Condition Aktor telah login ke dalam sistem dan sistem
menampilkan halaman utama.
Main Flow 1. Aktor menekan tombol menu logout.
2. Sistem menghapus hak akses akun dari sistem.
3. Sistem menampilkan halaman utama pengunjung.
Alternative Flow -
Post-Condition Sistem menampilkan halaman utama pengunjung.

Tabel 4.18 Skenario Use Case Membuat Akun


Actor Admin
Objective Mengizinkan aktor untuk dapat mendaftarkan akun baru
ke sistem.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
utama.
Main Flow 1.
Aktor menekan tombol menu buat akun.
2.
Sistem memeriksa autentikasi akun.
3.
Sistem menampilkan halaman membuat akun.
4.
Aktor memasukkan data tipe akun, nama, alamat,
email, dan No HP.
5. Aktor menekan tombol buat akun.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika terdapat kolom yang tidak terisi, maka sistem
menampilkan pesan error dan pemberitahuan untuk
mengisi kolom yang kosong.
3. Jika aktor menekan tombol Batal, maka sistem
menampilkan halaman utama aktor.
Post-Condition Sistem menyimpan data pada database dan menampilkan
halaman melihat akun.

Tabel 4.19 Skenario Use Case Melihat Akun Nasabah


Actor Admin
Objective Mengizinkan aktor untuk dapat melihat seluruh data akun
dari nasabah yang terdaftar pada sistem.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
utama.
Main Flow 1. Aktor menekan tombol menu akun nasabah.
2. Sistem memeriksa autentikasi akun.

32
3. Sistem menampilkan halaman melihat akun nasabah.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan halaman melihat akun nasabah.

Tabel 4.20 Skenario Use Case Mengubah Data Nasabah


Actor Admin
Objective Mengizinkan aktor untuk dapat mengubah data akun dari
nasabah.
Pre-Condition Aktor telah login dan membuka halaman mengubah data
akun nasabah.
Main Flow 1. Aktor mengubah data yang akan diubah.
2. Aktor menekan tombol simpan perubahan.
3. Sistem memeriksa autentikasi akun.
4. Sistem menyimpan perubahan data.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika penyimpanan data gagal, maka sistem
menampilkan pesan Data Tidak Tersimpan dan
menampilkan halaman melihat melihat akun
nasabah.
Post-Condition Sistem menyimpan data akun pada database dan
menampilkan halaman melihat akun nasabah.

Tabel 4.21 Skenario Use Case Menghapus Akun Nasabah


Actor Admin
Objective Mengizinkan aktor untuk dapat menghapus akun
nasabah.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
melihat akun nasabah.
Main Flow 1. Aktor menekan tombol hapus pada akun yang akan
dihapus.
2. Sistem menampilkan pesan “Apakah data akan
dihapus?”
3. Aktor menekan tombol Ya
4. Sistem memeriksa autentikasi akun.
5. Sistem menghapus akun.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika aktor menekan tombol Tidak, maka sistem
menampilkan halaman melihat akun nasabah

33
Post-Condition Sistem menghapus data akun dari database dan
menampilkan halaman melihat akun nasabah.

Tabel 4.22 Skenario Use Case Melihat Akun Petugas


Actor Admin
Objective Mengizinkan aktor untuk dapat melihat seluruh data akun
dari petugas yang terdaftar pada sistem.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
utama.
Main Flow 1. Aktor menekan tombol menu akun petugas.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman melihat akun petugas.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan halaman melihat akun petugas.

Tabel 4.23 Skenario Use Case Mengubah Data Petugas


Actor Admin
Objective Mengizinkan aktor untuk dapat mengubah data akun dari
petugas.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
mengubah data akun petugas.
Main Flow 1. Aktor mengubah data yang akan diubah.
2. Aktor menekan tombol simpan perubahan.
3. Sistem menyimpan perubahan data.
Alternative Flow 1. Jika terdapat kolom yang tidak terisi, maka sistem
menampilkan pesan error dan pemberitahuan untuk
mengisi kolom yang kosong.
2. Jika aktor menekan tombol Batal, maka sistem
menampilkan halaman melihat akun petugas.
Post-Condition Sistem menyimpan data akun pada database dan
menampilkan halaman melihat akun petugas.

Tabel 4.24 Skenario Use Case Menghapus Akun Petugas


Actor Admin
Objective Mengizinkan aktor untuk dapat menghapus akun petugas.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
melihat akun petugas.
Main Flow 1. Aktor menekan tombol hapus pada akun yang akan
dihapus.
2. Sistem menampilkan pesan “Apakah data akan
dihapus?”
3. Aktor menekan tombol Ya.

34
4. Sistem memeriksa autentikasi akun.
5. Sistem menghapus akun.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika aktor menekan tombol Tidak, maka sistem
menampilkan halaman melihat akun petugas
Post-Condition Sistem menghapus data akun dari database dan
menampilkan halaman melihat akun petugas.

Tabel 4.25 Skenario Use Case Verifikasi Transaksi Penyetoran


Actor Admin
Objective Mengizinkan aktor untuk dapat verifikasi transaksi
penyetoran sampah dan merilis transaksi pada buku
tabungan.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
melihat penyetoran sampah.
Main Flow 1. Aktor menekan tombol Verifikasi.
2. Sistem memeriksa autentikasi akun.
3. Sistem mengubah status pada database.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem mengubah status penyetoran pada database dan
menampilkan halaman melihat detail penjemputan.

Tabel 4.26 Skenario Use Case Melihat Transaksi Penyetoran


Actor Admin
Objective Mengizinkan aktor untuk dapat melihat seluruh riwayat
penyetoran sampah yang pernah dilakukan oleh nasabah.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
utama.
Main Flow 1. Aktor menekan tombol menu penyetoran sampah.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman penyetoran sampah.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan data penyetoran sampah dari
nasabah.

Tabel 4.27 Skenario Use Case Melihat Detail Transaksi Penyetoran


Actor Admin
Objective Mengizinkan aktor untuk dapat melihat data detail dari
transaksi penyetoran sampah yang pernah dilakukan oleh
nasabah.

35
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
melihat penyetoran sampah.
Main Flow 1. Aktor menekan tombol detail.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman detail penyetoran
sampah.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan data detail penyetoran sampah dari
nasabah.

Tabel 4.28 Skenario Use Case Menghapus Transaksi Penyetoran


Actor Admin
Objective Mengizinkan aktor untuk dapat menghapus transaksi
penyetoran
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
melihat penyetoran sampah.
Main Flow 1. Aktor menekan tombol hapus pada data penyetoran
yang akan dihapus.
2. Sistem menampilkan pesan “Apakah data akan
dihapus?”
3. Aktor menekan tombol Ya.
4. Sistem memeriksa autentikasi akun.
5. Sistem menghapus data dari database.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika aktor menekan tombol Tidak, maka sistem
menampilkan halaman melihat transaksi
penyetoran.
Post-Condition Sistem menghapus data dari database dan menampilkan
halaman melihat transaski penyetoran.

Tabel 4.29 Skenario Use Case Membuat Transaksi Penarikan


Actor Admin
Objective Mengizinkan aktor untuk dapat membuat data transaksi
penarikan saldo yang dilakukan nasabah.
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
membuat penarikan saldo.
Main Flow 1. Aktor mengisi data tanggal penarikan, nomor
rekening, dan total debet penarikan.
2. Aktor menekan tombol simpan.
3. Sistem menyimpan data penarikan pada database.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.

36
2. Jika transaksi gagal, maka sistem menampilkan pesan
data tidak tersimpan dan menampilkan halaman
melihat penarikan saldo.
3. Jika saldo tidak cukup, maka sistem menampilkan
pesan saldo tidak mencukupi.
Post-Condition Sistem menyimpan data penarikan pada database dan
menampilkan halaman melihat transaksi penarikan saldo.

Tabel 4.30 Skenario Use Case Melihat Transaksi Penarikan


Actor Admin
Objective Mengizinkan aktor untuk dapat melihat seluruh riwayat
penarikan saldo yang pernah dilakukan oleh nasabah
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
utama.
Main Flow 1. Aktor menekan tombol menu penarikan saldo.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman melihat penarikan
saldo.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan data transaksi penarikan.

Tabel 4.31 Skenario Use Case Menghapus Transaksi Penarikan


Actor Admin
Objective Mengizinkan aktor untuk dapat menghapus transaksi
penarikan saldo
Pre-Condition Aktor telah login sebagai admin dan membuka halaman
melihat penarikan saldo.
Main Flow 1. Aktor menekan tombol hapus pada data penarikan
yang akan dihapus.
2. Sistem menampilkan pesan “Apakah data akan
dihapus?”
3. Aktor menekan tombol Ya.
4. Sistem memeriksa autentikasi akun.
5. Sistem menghapus data dari database.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika aktor menekan tombol Tidak, maka sistem
menampilkan halaman melihat transaksi penarikan.
Post-Condition Sistem menghapus data dari database dan menampilkan
halaman melihat transaksi penarikan.

37
Tabel 4.32 Skenario Use Case Melihat Penjemputan Sampah
Actor Admin / Driver
Objective Mengizinkan aktor untuk dapat melihat seluruh data
penjemputan sampah yang dikirimkan nasabah.
Pre-Condition Aktor telah login sebagai admin/petugas dan membuka
halaman utama.
Main Flow 1. Aktor menekan tombol menu jemput sampah.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman melihat jemput
sampah.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan data jemptut sampah.

Tabel 4.33 Skenario Use Case Melihat Detail Penjemputan


Actor Admin / Driver
Objective Mengizinkan aktor untuk dapat melihat detail
pemesanan jemput sampah yang pernah dikirimkan
nasabah.
Pre-Condition Aktor telah login sebagai admin/petugas dan membuka
halaman melihat jemput sampah.
Main Flow 1. Aktor menekan tombol detail pada data jemput
sampah yang dipilih.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan data detail penjemputan.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
Post-Condition Sistem menampilkan data detail penjemputan.

Tabel 4.34 Skenario Use Case Mengubah Status Penjemputan


Actor Admin / Driver
Objective Mengizinkan aktor untuk dapat mengubah status dari
penjemputan sampah.
Pre-Condition Aktor telah login sebagai admin/petugas dan membuka
halaman detail jemput sampah.
Main Flow 1. Aktor menekan tombol untuk mengubah status.
2. Sistem menampilkan pesan verifikasi untuk
mengubah status.
3. Aktor menekan tombol Ya
4. Sistem memeriksa autentikasi akun.
5. Sistem menyimpan status pada database.

38
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika aktor menekan tombol tidak pada mengubah
status, sistem menampilkan halaman melihat detail
jemput sampah.
3. Jika aktor menekan tombol tolak penjemputan, maka
aktor mengisi alasan penolakan dan menekan tombol
kirim.
4. Jika aktor menekan tombol tidak pada menolak
penjemputan, maka sistem menampilkan halaman
melihat detail jemput sampah
Post-Condition Status berhasil diubah dan menampilkan halaman detail
penjemputan sampah.

Tabel 4.35 Skenario Use Case Membuat Transaksi Penyetoran


Actor Driver
Objective Mengizinkan aktor untuk dapat membuat rekapan data
dari transaksi penyetoran yang dilakukan nasabah.
Pre-Condition Aktor telah login sebagai driver dan membuka halaman
melihat detail penjemputan.
Main Flow 1. Aktor menekan tombol rekap pesanan.
2. Sistem memeriksa autentikasi akun.
3. Sistem menampilkan halaman untuk membuat
penyetoran sampah.
4. Aktor mengisi data nomor penyetoran, tanggal
penyetoran, nomor rekening, kode sampah, dan
berat sampah.
5. Aktor menekan tombol tambah barang.
6. Apabila terdapat lebih dari satu sampah, aktor
mengulangi langkah 4 dan 5.
7. Aktor menekan tombol simpan.
8. Sistem menyimpan data penyetoran pada database.
Alternative Flow 1. Jika aktor tidak valid, maka sistem menampilkan
halaman utama pengunjung.
2. Jika terdapat kolom yang tidak terisi, maka sistem
menampilkan pesan error dan pemberitahuan untuk
mengisi kolom yang kosong.
3. Jika aktor menekan tombol Batal, maka sistem
menampilkan halaman melihat detail penjemputan.
4. Jika aktor memilih data dan klik tombol hapus, maka
sistem akan menghapus data sampah yang dipilih.
Post-Condition Sistem menyimpan data akun pada database dan
menampilkan halaman melihat detail penjemputan.

39
BAB 5 PERANCANGAN

Pada bab inixakan dibahas tahap perancangan dari sistem aplikasi transaksi
bank sampah online. Setelah menentukan seluruh kebutuhan-kebutuhan dari
sistem, kemudian akan dilanjutkan pada tahap perancangan, yaitu pengembangan
perangkat lunak berdasarkan hasil analisis kebutuhan yang telah ditentukan pada
bab sebelumnya. Perancangan sistem dilakukan dengan lima tahap perancangan
dan dapat dilihat pada Gambar 5.1. Tahapan perancangan sistem terdiri dari
perancangan sequence diagram,aperancangan class diagram,cperancangan basis
data,pperancangan komponen, danaperancangan antarmuka.

Gambar 5.1 Diagram Alir Perancangan Sistem

5.1 Perancangan Sequence Diagram


Sequence diagram merupakan representasi dari alur jalannya sebuah
interaksi yang terjadi antar objek pada sistem. Seluruh objek yang terdapat pada
sequence diagram diperoleh dari hasil identifikasi terhadap spesifikasi kebutuhan
dan use case. Berikut merupakan tiga sequence diagram yang akan digunakan
sebagai sampel.

5.1.1 Sequence Diagram Membuat Transaksi Penarikan


Sequence Diagram membuat transaksi penarikan pada Gambar 5.2
menggambarkan proses yang terjadi saat admin membuat transaksi penarikan
saldo nasabah. Admin harus mengisi seluruh data yang ada dengan lengkap.
Kemudian sistem akan mengambil jumlah saldo rekening nasabah. Jika admin
melakukan klik tombol simpan, sistem akan memeriksa autentikasi akun. jika
terautentikasi, maka data penarikan saldo nasabah disimpan pada data penarikan,
data buku tabungan nasabah, serta saldo nasabah akan diperbaharui. Setelah data
selesai tersimpan, sistem akan kembali menampilkan halaman untuk melihat
seluruh transaksi penarikan disertai dengan data penarikan yang baru saja

40
ditambahkan. Jika transaksi gagal tersimpan, maka sistem akan menampilkan
pesan error dan menampilkanhalaman untuk membuat transaksi penarikan baru.
Jika akun tidak terautentikasi, maka akan menampilkan halaman utama
pengunjung.

Gambar 5.2 Sequnce Diagram Membuat Transaksi Penarikan

5.1.2 Sequence Diagram Mengubah Data Nasabah


Sequence diagram mengubah data nasabah pada Gambar 5.3
menggambarkan proses yang terjadi saat admin mengubah data nasabah.

41
Pertama admin harus login dan membuka halaman untuk mengedit data akun
nasabah, kemudian admin mengisi data akun yang akan diubah secara lengkap,
dan mengklik tombol Simpan. Sistem akan melakukan pemeriksaan autentikasi
akun. Jika terautentikasi maka, sistem akan menyimpan perubahan data pada
database dan menampilkan pesan bahwa data berhasil tersimpan dan
menampilkan halaman untuk melihat akun nasabah, jika data tidak berhasil
tersimpan maka sistem akan menampilkan pesan error dan menampilkan halaman
mengubah data akun. Jika akun tidak terautentikasi maka, sistem akan
menampilkan halaman utama pengunjung.

Gambar 5.3 Sequnce Diagram Mengubah Data Nasabah

5.1.3 Sequence Diagram Melihat Buku Tabungan


Sequence Diagram melihat buku tabungan pada Gambar 5.4
menggambarkan proses yang terjadi saat nasabah ingin melihat riwayat transaksi
pada buku tabungan nasabah. Pertama nasabah harus sudah login, kemudian
melakukan klik pada menu buku tabungan. Sebelum menampilkan halaman buku

42
tabungan akan dilakukan pemeriksaan autentikasi akun. Jika terautentikasi maka
sistem akan mengambil data buku tabungan nasabah sesuai dengan username
dan kemudian menampilkan data pada halaman buku tabungan. Jika akun tidak
terautentikasi maka sistem akan menampilkan halaman beranda pengunjung.

Gambar 5.4 Sequnce Diagram Melihat Buku Tabungan

5.2 Perancangan Class Diagram


Perancanagan class diagram dilakukan untuk mengidentifikasi kelas, objek,
dan interaksi yang terjadi pada sistem. Kelas-kelas yang ditemukan diperoleh
dengan cara memeriksa objek yang terdapat pada sequence diagram. Class
diagram dari sistem aplikasi transaksi bank sampah online terdiri dari 7 kelas
controller, 7 kelas model, dan 23 kelas view. Class Diagram dari sistem aplikasi
transaksi bank sampah online diilustrasikan pada Gambar 5.5.

5.3 Perancangan Komponen


Perancangan komponenmmenggambarkan bagaimana rincian subsistem
dari masing-masing komponen yang ada pada perangkat lunak. Perancangan
komponen menjelaskan bagaimana algoritme dari sebuah proses yang terjadi
pada sistem. Pada perancangan komponen ini terdapat 5 algoritme fungsi yang
digunakan sebagai sampel, yaitu algoritme fungsi insertPenarikan, algoritme
fungsi updateAkun, algoritme fungsi bukuTabungan, algoritme fungsi
detailPenjemputan, dan algoritme fungsi Login.

43
Gambar 5.5 Class Diagram Sistem

44
5.3.1 Algoritme Fungsi insertPenarikan
Algoritme fungsi insertPenarikan merupakan algoritme yang menjelaskan
proses ketika admin telah melakukan penambahan data transaksi penarikan saldo,
kemudian data transaksi akan disimpan di dalam database. Algoritme ini dapat
dilihat pada Kode Program 5.1.
Nama Class : C_akun
Nama Fungsi : insertPenarikan
Algoritme :
1 Mulai
2 Mengecek autentikasi data petugas
3 Jika data petugas dikenal maka
4 Inisialisasi username
5 Inisialisasi noNota
6 Inisialisasi tanggal
7 Inisialisasi debet
8 Mengambil data nasabah berdasarkan username
9 Mengambil data saldo nasabah
10 Mengurangi saldo dengan debet
11 Inisialisasi variabel updateSaldo = saldoAkhir
12 Inisialisasi variabel where = username
13 Membuat array dataPenarikan
14 Menambahkan dataPenarikan pada database penarikan
15 Membuat array dataBuku
16 Menambahkan dataBuku pada database buku tabungan
17 Jika data berhasil ditambahkan ke database maka
18 Memberikan pesan “Transaksi Berhasil Disimpan”
19 Menampilkan halaman melihat transaksi penarikan
20 Else then
21 Memberikan pesan “Transaksi Tidak Tersimpan”
22 Menampilkan halaman membuat transaksi penarikan
23 Jika data tidak dikenali maka
24 Memberikan pesan “Anda harus Login”
25 Selesai
Kode Program 5.1 Algoritme Fungsi insertPenarikan

5.3.2 Algoritme Fungsi updateAkun


Algoritme fungsi updateAkun merupakan algoritme yang menjelaskan
proses ketika admin telah melakukan perubahan data pada akun nasabah/petugas
kemudian sistem akan menyimpan perubahan data pada database. Algoritme ini
dapat dilihat pada Kode Program 5.2.
Nama Class : C_akun
Nama Fungsi : updateAkun()
Algoritme :
1 Mulai
2 Memeriksa autentikasi akun nasabah
3 Jika akun dikenali maka
4 Inisialisasi nama
5 Inisialisasi username
6 Inisialisasi alamat
7 Inisialisasi email
8 Inisialisasi noHP
9 Inisialisasi akun
10 Membuat array untuk menyimpan data akun
11 Menentukan username dari akun yang akan diubah
12 If data yang diubah adalah nasabah then

45
13 Mengubah data nasabah pada database berdasarkan username
14 Menentukan link nasabah
15 Else if data yang diubah adalah petugas then
16 Mengubah data petugas pada database berdasarkan username
17 Menentukan link petugas
18
19 If data berhasil diubah then
20 Memberikan pesan “Data Berhasil Diubah”
21 Menampilkan halaman melihat akun nasabah
22 Else If data tidak berhasil disimpan then
23 Memberikan pesan “Data Tidak Tersimpan”
24 Menampilkan halaman melihat akun petugas
25 Jika akun tidak dikenali maka
26 Memberikan pesan “Anda harus Login”
27 Menampilkan halaman beranda pengunjung
28 Selesai
Kode Program 5.2 Algoritme Method updateAkun

5.3.3 Algoritme Fungsi bukuTabungan


Algoritme fungsi bukuTabungan merupakan tahapan yang menjelaskan
proses ketika nasabah melihat buku tabungan miliknya. Algoritme ini dapat dilihat
pada Kode Program 5.3.
Nama Class : C_nasabah
Nama Fungsi : bukuTabungan()
Algoritme :
1 Mulai
2 Memeriksa autentikasi akun nasabah
3 Jika akun dikenali maka
4 Mengambil data buku tabungan berdasarkan username
5 Mengambil data nasabah berdasarkan username
6 Inisialisasi array untuk menampung data buku tabungan dan data
nasabah
7 Menampilkan halaman buku tabungan dan mengirimkan array data
8 Jika akun tidak dikenali maka
9 Memberikan pesan “Anda harus Login”
10 Menampilkan halaman beranda pengunjung
11 Selesai
Kode Program 5.3 Algoritme Fungsi bukuTabungan

5.3.4 Algoritme Fungsi detailPenjemputan


Algoritme fungsi detailPenjemputanmerupakan algoritme yang
menjelaskan proses ketika petugas melihat data detail dari penjemputan sampah
nasabah. Algoritme ini dapat dilihat pada Kode Program 5.4.
Nama Class : C_jemput
Nama Fungsi : detailPenjemputan($no)
Algoritme :
1 Mulai
2 Mengecek autentikasi data petugas
3 Jika data petugas dikenal maka
4 Mengambil data penjemputan berdasarkan idJemput
5 Inisialisasi variabel tipe = session tipe
6 Inisialisasi variabel nextStat
7 Jika status = Menunggu Konfirmasi maka
8 Nilai nextStat = Menunggu Penjemputan
9 Nilai tombol = Terima Pesanan

46
10 Jika status = Menunggu Penjemputan maka
11 Nilai nextStat = Menjemput Pesanan
12 Nilai tombol = Jemput Pesanan
13 Jika status = Menjemput Pesanan maka
14 Nilai tombol = Rekap Pesanan
15 Jika status = Menunggu Verifikasi maka
16 Nilai nextStat = Selesai
17 Nilai tombol = Verifikasi Pesanan
18 Jika status = Selesai atau status = Penjemputan Ditolak maka
19 Nilai tombol = Selesai
20
21 Inisialisasi array data penjemputan
22 Jika tipe = Admin maka
23 Menampilkan halaman mengecek lokasi Admin dan mengirimkan data
penjemputan
24 Jika tipe = Driver maka
25 Menampilkan halaman mengecek lokasi Driver dan mengirimkan
data penjemputan
26 Jika data tidak dikenali maka
Memberikan pesan “Anda harus Login”
27 Selesai
Kode Program 5.4 Algoritme Fungsi detailPenjemputan

5.3.5 Algoritme Fungsi Login


Algoritme fungsi Login merupakan algoritme yang menjelaskan proses
ketika pengunjung melakukan login dan sistem akan mengenali akun pengunjung
kemudian menampilkan halaman utama sesuai dengan akun yang dikenali.
Algoritme ini dapat dilihat pada Kode Program 5.5.
Nama Class : C_pengunjung
Nama Fungsi : login()
Algoritme :
1 Mulai
2 Mengambil nilai username
3 Mengambil nilai password
4 Mengecek data nasabah berdasarkan username dan password
5 Mengecek data petugas berdasarkan username dan password
6 Jika data nasabah ditemukan maka
7 Mengambil data nasabah
8 Inisialisasi tipe nasabah
9 Inisialisasi array session
10 Membuat data session
11 Memberikan pesan “Login Berhasil”
12 Menampilkan halaman profil nasabah
13 Jika data petugas ditemukan maka
14 Mengambil data petugas
15 Inisialisasi tipe petugas
16 Inisialisasi nama petugas
17 Inisialisasi nomor HP petugas
18 Inisialisasi array session
19 Membuat data session
20 Memberikan pesan “Login Berhasil”
21 Menampilkan halaman profil petugas
22 Jika data tidak ditemukan
23 Memberikan pesan “Login Gagal”
24 Menampilkan halaman utama pengunjung
25 Selesai
Kode Program 5.5 Algoritme Fungsi Login

47
5.4 Perancangan Basis Data
Perancangan basis data akan dibuat secara konseptual dengan menggunakan
Entity Relationship Diagram (ERD). Terdapat sembilan entitas yaitu petugas,
nasabah, buku tabungan, transaksi penyetoran sampah, transaksi penarikan saldo,
detail penyetoran sampah, jemput sampah, detail status penjemputan, dan
sampah. Perancangan basis data dari sistem aplikasi transaksi bank sampah online
diilustrasikan dengan diagram pada Gambar 5.6.

Gambar 5.6 Entity Relationship Diagram Sistem

5.5 Perancangan Antarmuka


Pada bagian ini akan dijelaskan hasil perancangan antarmuka halaman web
dari sistem aplikasi transaksi bank sampah online yang dikembangkan. Terdapat 7
buah model antarmuka dari sistem yang diambil sebagai sampel. Hasil
perancangan antarmuka dari sistem ditunjukkan pada Gambar 5.7 hingga Gambar
5.13.

48
5.5.1 Perancangan Antarmuka Membuat Transaksi Penarikan Saldo
Antarmuka membuat transaksi penarikan saldo merupakan halaman bagi
admin yang bertujuan untuk membuat transasksi penarikan saldo. Hasil
perancangan antarmuka membuat transaksi penarikan saldo direpresentasikan
pada Gambar 5.7.

Gambar 5.7 Antarmuka Membuat Transaksi Penarikan Saldo

5.5.2 Perancangan Antarmuka Mengubah Data Nasabah


Antarmuka mengubah data nasabah merupakan halaman bagi admin yang
bertujuan untuk mengubah data akun nasabah yang terdaftar. Hasil perancangan
antarmuka mengubah data nasabah direpresentasikan pada Gambar 5.8.

Gambar 5.8 Perancangan Antarmuka Mengubah Data Nasabah

5.5.3 Perancangan Antarmuka Melihat Buku Tabungan


Antarmuka melihat buku tabungan merupakan halaman bagi nasabah yang
bertujuan untuk melihat data transaksi yang terekam pada buku tabungan. Hasil
perancangan antarmuka melihat buku tabungan direpresentasikan pada Gambar
5.9.

49
Gambar 5.9 Perancangan Antarmuka Melihat Buku Tabungan

5.5.4 Perancangan Antarmuka Melihat Detail Penjemputan


Antarmuka melihat detail penjemputan merupakan halaman bagi petugas
yang bertujuan untuk melihat data detail dari penjemputan sampah. Hasil
perancangan antarmuka melihat detail penjemputan direpresentasikan pada
Gambar 5.10.

Gambar 5.10 Perancangan Antarmuka Melihat Melihat Detail Penjemputan

5.5.5 Perancangan Antarmuka Login


Antarmuka login merupakan halaman bagi pengunjung yang bertujuan
untuk bisa login ke dalam sistem dengan memasukkan username dan password.
Hasil perancangan antarmuka melihat detail penjemputan direpresentasikan pada
Gambar 5.11.

Gambar 5.11 Perancangan Antarmuka Login

50
5.5.6 Perancangan Antarmuka Melihat Transaksi Penarikan Saldo
Antarmuka melihat transaksi penarikan saldo merupakan halaman bagi
admin yang bertujuan untuk melihat seluruh data transasksi penarikan saldo. Hasil
perancangan antarmuka melihat transaksi penarikan saldo direpresentasikan
pada Gambar 5.12.

Gambar 5.12 Perancangan Antarmuka Melihat Transaksi Penarikan Saldo

5.5.7 Perancangan Antarmuka Membuat Transaksi Penyetoran


Antarmuka membuat transaksi penyetoran merupakan halaman bagi driver
yang bertujuan untuk mencatat data transasksi penyetoran sampah. Hasil
perancangan antarmuka membuat transaksi penyetoran direpresentasikan pada
Gambar 5.13.

Gambar 5.13 Perancangan Antarmuka Membuat Transaksi Penyetoran

51
BAB 6 IMPLEMENTASI SISTEM

Pada tahap ini akan dijelaskan hasil dari implementasi sistem yang dibuat
berdasarkan hasil dari perancangan sistem. Tahap implemtasi yang dilakukan
adalah spesifikasi sistem, implementasi basis data, implementasi source code, dan
implementasilantarmuka.

6.1 Spesifikasi Sistem


Spesifikasi sistem dari sistem aplikasi transaksi bank sampah online yang
digunakan dalam membantu proses pengembangan sistem dibagihmenjadi dua
sub bab, yaitu spesifikasilperangkat keras dan2spesifikasi perangkat lunak.

6.1.1 Spesifikasi Perangkat Keras


Pembuatan sistem aplikasi transaksi bank sampah online menggunakan
perangkat keras dengan spesifikasi yang dijelaskan pada Tabel 6.1.
Tabel 6.1 Spesifikasi Perangkat Keras
Nama Komponen Spesifikasi
System Model Del Inc. Inspiron 5437 x64
Processor Intel(R) Core(TM) i3-4010U CPU
@1.70GHz
Memory (RAM) 8,00GB Dual-Channel DDR3 @ 798MHz
Display Intel HD Graphics Family (Dell)
NVIDIA GeForce GT 740M
Hardisk 465GB Hitachi HGST HTS545050A7E680
(SATA)

6.1.2 Spesifikasi Perangkat Lunak


Terdapat beberapa perangkat lunak pendukung yang digunakan dalam
proses Perancangan sistem aplikasi transaksi bank sampah online. Spesifikasi
perangkat lunak yang digunakan dijelaskan pada Tabel 6.2.
Tabel 6.2 Spesifikasi Perangkat Lunak
Nama Komponen Spesifikasi
Sistem Operasi Windows 10 Pro 64-Bit
Bahasa Pemrograman PHP, Javascript, CSS, HTML, AJAX
Perkakas Bantu XAMPP v3.2.2
Sublime Text 3
Draw.io
Microsoft Word 2016
Visual Paradigm Enterprise 15.0

52
6.1.3 Batasan Implementasi
Berikut merupakan beberapa batasan yang ditemukan dalam tahap
implementasi sistem aplikasi transaksi bank sampah online. Batasan-batasan
tersebut diantaranya adalah :
1. Sistem yang dikembangkan berbasis web dengan menggunakan bahasa
pemrograman PHP, CSS, HTML, AJAX, dan Javascript.
2. Database Management System yang digunakan adalah MySQL.
3. Sistem dibangun dengan menggunakan framework CodeIgniter versi 3.1.6.

6.2 Implementasi Basis Data


Implementasi basis data dibuat berdasarkan dengan hasil perancangan basis
data pada Gambar 5.6 dengan menggunakan PHPMyAdmin 4.5.1. Hasil
implementasi basis data yang telah dibuat diilustrasikan dalam bentuk Physical
Data Model pada Gambar 6.1. Sesuai dengan hasil perancangan basis data,
didapatkan 9 tabel yaitu tabel penyetoran untuk menyimpan data transaksi
penyetoran sampah, tabel detailpenyetoran untuk menyimpan data detail dari
transaksi penyetoran, tabel sampah untuk menyimpan data sampah dan harga-
harganya, tabel nasabah untuk menyimpan data akun nasabah BSM, tabel
penarikan untuk menyimpan data transaksi penarikan saldo, tabel bukutabungan
untuk menyimpan data buku tabungan dari nasabah, tabel jemputsampah untuk
menyimpan data penjemputan sampah, tabel detailstatus untuk menyimpan data
detail status penjemputan sampah, dan tabel petugas untuk menyimpan data
akun petugas.

Gambar 6.1 Physical Data Model

53
6.3 Implementasi Source Code
Pada tahap implementasi source code ini akan mengubah hasil perancangan
algoritme ke dalam bahasa komputer dengan menggunakan bahasa
pemrograman PHP. Berikut 5 buah source code yang dijadikan sebagai sampel
yaitu, fungsi insertPenarikan, fungsi updateAkun, fungsi bukuTabungan, fungsi
detailPenjemputan, dan fungsi login.

6.3.1 Source Code Fungsi insertPenarikan


Fungsi insertPenarikan merupakan fungsi yang terdapat di class C_akun yang
dipanggil ketika admin melakukan penambahan data transaksi penarikan saldo.
Fungsi bukuTabungan ini dapat dilihat pada Kode Program 6.1.
Nama Class : C_akun
Nama Fungsi : insertPenarikan
Algoritme :
1 public function insertPenarikan(){
2 $cek = $this->modPetugas->cekData($this->session-
3 >userdata('username'),$this->session->userdata('password'));
4 if ($cek > 0) {
5 $username = $this->input->post('username');
6 $noNota = $this->input->post('noNota');
7 $tanggal = $this->input->post('tanggal');
8 $debet = $this->input->post('debet');
9
10 $akun = $this->modNasabah->GetWhere(array('username'=>$username));
11 $saldo = $akun[0]['saldo'];
12 $saldoAkhir = $saldo - $debet;
13 $updateSaldo = array('saldo' => $saldoAkhir);
14 $where = array('username' => $username);
15
16 $ubahSaldo = $this->modNasabah->UpdateAkun($updateSaldo, $where);
17
18 $dataPenarikan = array(
19 'noNota' => $noNota,
20 'username' => $username,
21 'tanggal' => $tanggal,
22 'debet' => $debet
23 );
24 $insertPenarikan = $this->modPenarikan->Insert($dataPenarikan);
25
26 $dataBuku = array(
27 'noNota' => $noNota,
28 'username' => $username,
29 'tanggal' => $tanggal,
30 'debet' => $debet,
31 'saldo' => $saldoAkhir
32 );
33 $insertBuku = $this->modBukuTabungan->InsertTransaksi($dataBuku);
34
35 if ($insertBuku == TRUE){
36 ?>
37 <script type="text/javascript">
38 alert("Transaksi Berhasil Disimpan!");
39 window.location = "<?php echo site_url("c_penarikan") ?>"
40 </script>
41 <?php
42 }else{
43 ?>

54
44 <script type="text/javascript">
45 alert("Transaksi Tidak Tersimpan!");
46 window.location = "<?php echo
47 site_url("c_penarikan/tambahPenarikan")?>"
48 </script>
49 <?php
50 }
51 }else{
52 ?>
53 <script type="text/javascript">
54 alert("Anda harus Login terlebih dahulu!");
55 window.location = "<?php echo site_url("") ?>"
56 </script>
57 <?php
58 }
59 }
Kode Program 6.1 Source Code Fungsi insertPenarikan

6.3.2 Source Code Fungsi updateAkun


Method updateAkun merupakan fungsi yang terdapat di class C_akun.
Method ini akan dipanggil ketika admin mengubah data akun nasabah atau akun
petugas dan sistem akan menyimpan perubahan data akun. Method
bukuTabungan ini dapat dilihat pada Kode Program 6.2.
Nama Class : C_akun
Nama Fungsi : updateAkun()
Algoritme :
1 public function updateAkun($username){
2 $cek = $this->modPetugas->cekData($this->session-
3 >userdata('username'),$this->session->userdata('password'));
4 if ($cek > 0) {
5 $nama = $_POST['nama'];
6 $username = $_POST['username'];
7 $alamat = $_POST['alamat'];
8 $email = $_POST['email'];
9 $noHP = $_POST['noHP'];
10 $akun = $_POST['akun'];
11
12 $data = array(
13 'nama' => $nama,
14 'alamat' => $alamat,
15 'email' => $email,
16 'noHP' => $noHP
17 );
18 $where = array('username' => $username);
19
20 if($akun == 'n'){
21 $res = $this->modNasabah->UpdateAkun($data, $where);
22 $link = "c_akun";
23 }else if($akun == 'p'){
24 $res = $this->modPetugas->UpdateAkun($data, $where);
25 $link = "c_akun/lihatPetugas";
26 }
27
28 if ($res>0) {
29 ?><script type="text/javascript">
30 alert("Data Berhasil Diubah!");
31 window.location = "<?php echo site_url($link) ?>"
32 </script><?php

55
33 }else{
34 ?><script type="text/javascript">
35 alert("Data Tidak Tersimpan!");
36 window.location = "<?php echo site_url($link) ?>"
37 </script><?php
38 }
39 }else{?>
40 <script type="text/javascript">
41 alert("Anda harus Login terlebih dahulu!");
42 window.location = "<?php echo site_url("") ?>"
43 </script>
44 <?php
45 }
46 }
Kode Program 6.2 Source Code Method updateAkun

6.3.3 Source Code Fungsi bukuTabungan


Fungsi bukuTabungan merupakan fungsi yang terdapat di class C_nasabah
yang akan dipanggil untuk menampilkan halaman buku tabungan kepada nasabah.
Fungsi bukuTabungan ini dapat dilihat pada Kode Program 6.3.
Nama Class : C_nasabah
Nama Fungsi : bukuTabungan()
Algoritme :
1 public function bukuTabungan() {
$cek = $this->modNasabah->cekData($this->session-
2 >userdata('username'),$this->session->userdata('password'));
3 if ($cek > 0) {
$dataBuku = $this->modBukuTabungan->GetWhere(array('username'
4 => $this->session->userdata('username')));
$user = $this->modNasabah->GetWhere(array('username' => $this-
5 >session->userdata('username')));
6 $data = array('dataBuku' => $dataBuku,
7 'username' => $user[0]['username'],
8 'nama' => $user[0]['nama'],
9 'saldoAkhir' => $user[0]['saldo'],
10 'tabNasabah' => 2
11 );
12
13 $this->load->view('nasabah/v_headerNasabah', $data);
14 $this->load->view('nasabah/v_bukuTabungan', $data);
15 $this->load->view('nasabah/v_footerNasabah');
16 }else{
17 ?>
18 <script type="text/javascript">
19 alert("Anda harus Login terlebih dahulu!");
20 window.location = "<?php echo site_url("") ?>"
21 </script>
22 <?php
23 }
24 }
Kode Program 6.3 Source Code Fungsi BukuTabungan

6.3.4 Source Code Fungsi detailPenjemputan


Fungsi detailPenjemputanmerupakan fungsi yang terdapat di class C_jemput
yang akan dipanggil untuk menampilkan halaman melihat detail penjemputan
kepada petugas. Fungsi bukuTabungan ini dapat dilihat pada Kode Program 6.4.

56
Nama Class : C_jemput
Nama Fungsi : detailPenjemputan($no)
Algoritme :
1 public function detailPenjemputan ($no){
2 $cek = $this->modPetugas->cekData($this->session-
3 >userdata('username'),$this->session->userdata('password'));
4 if ($cek > 0) {
5 $akun = $this->modJemput->GetWhere(array('idJemput' => $no));
6 $tipe = $this->session->userdata('tipe');
7
8 $nextStat = '';
9 if($akun[0]['status'] == 'Menunggu Konfirmasi'){
10 $nextStat = 'Menunggu Penjemputan';
11 $tombol = 'Terima Pesanan';
12 }else if($akun[0]['status'] == 'Menunggu Penjemputan'){
13 $nextStat = 'Menjemput Pesanan';
14 $tombol = 'Jemput Pesanan';
15 }else if($akun[0]['status'] == 'Menjemput Pesanan'){
16 $tombol = 'Rekap Pesanan';
17 }else if($akun[0]['status'] == 'Menunggu Verifikasi'){
18 $nextStat = 'Selesai';
19 $tombol = 'Verifikasi Pesanan';
20 }else if($akun[0]['status'] == 'Selesai' || $akun[0]['status']
21 == 'Penjemputan Ditolak'){
22 $tombol = 'Selesai';
23 }
24 $data = array(
25 'idJemput' => $akun[0]['idJemput'],
26 'username' => $akun[0]['username'],
27 'HP' => $akun[0]['HP'],
28 'alamat' => $akun[0]['alamat'],
29 'tanggal' => $akun[0]['tanggalJemput'],
30 'latitude' => $akun[0]['latitude'],
31 'longitude' => $akun[0]['longitude'],
32 'waktu' => $akun[0]['waktu'],
33 'kloter' => $akun[0]['kloter'],
34 'status' => $akun[0]['status'],
35 'nextStat' => $nextStat ,
36 'tabDriver' => 2,
37 'tabAdmin' =>8,
38 'tipe' => $tipe,
39 'tombol' => $tombol,
40 'driver' => $akun[0]['driver'],
41 'nohpDriver' => $akun[0]['nohpDriver'],
42 'noNota' => $akun[0]['noNota']
43 );
44 if($tipe == 'Admin'){
45 $this->load->view('petugas/pages/v_headerAdmin', $data);
46 $this->load->view('petugas/v_detailPenjemputan', $data);
47 $this->load->view('petugas/pages/v_footerAdmin');
48 }else if ($tipe == 'Driver'){
49 $this->load->view('petugas/pages/v_headerDriver',$data);
50 $this->load->view('petugas/v_detailPenjemputan', $data);
51 $this->load->view('petugas/pages/v_footerAdmin');
52 }
53 }else{
54 ?><script type="text/javascript">
55 alert("Anda harus Login terlebih dahulu!");
56 window.location = "<?php echo site_url("") ?>"
57 </script><?php
58 }
59 }
Kode Program 6.4 Source Code Fungsi detailPenjemputan

57
6.3.5 Source Code Fungsi Login
Fungsi login merupakan fungsi yang terdapat di class C_pengunjung yang
dipanggil untuk memeriksa autentikasi dari akun yang melakukan login dan
menampilkan halaman utama pengguna sesuai dengan hak aksesnya. Fungsi
bukuTabungan ini dapat dilihat pada Kode Program 6.5.
Nama Class : C_pengunjung
Nama Fungsi : login()
Algoritme :
1 public function login() {
2 $username = $this->input->post('username');
3 $password = $this->input->post('password');
4 $cekNasabah = $this->modNasabah->cekData($username, $password);
5 $cekPetugas = $this->modPetugas->cekData($username, $password);
6
7 if ($cekNasabah > 0) {
8 $user=$this->modNasabah->GetWhere(array('username'=> $username,
'password' => $password));
9 $tipeNasabah = $user[0]['tipeNasabah'];
10 $data_session = array(
11 'username' => $username,
12 'password' => $password,
13 'tipeNasabah' => $tipeNasabah
14 );
15 $this->session->set_userdata($data_session);
16 ?>
17 <script type="text/javascript">
18 alert("Login Berhasil!");
19 window.location = "<?php echo
site_url('c_nasabah/profilNasabah') ?>";
20 </script>
21 <?php
22
23 }else if ($cekPetugas > 0) {
24 $user = $this->modPetugas->GetWhere(array('username' =>
$username, 'password' => $password));
25 $tipe = $user[0]['tipe'];
26 $nama = $user[0]['nama'];
27
28 $data_session = array(
29 'username' => $username,
30 'nama' => $nama,
31 'password' => $password,
32 'tipe' => $tipe
33 );
34 $this->session->set_userdata($data_session);
35
36 ?><script type="text/javascript">
37 alert("Login Berhasil!");
38 window.location="<?php echo site_url('c_akun/berandaPetugas')?>";
39 </script><?php
40 }else {
41 ?> <script type="text/javascript">
42 alert("Login Gagal!");
43 window.location = "<?php echo site_url("") ?>";
44 </script><?php
45 }
46 }
Kode Program 6.5 Source Code Fungsi Login

58
6.4 Implementasi Antarmuka
Antarmuka dari Sistem Aplikasi Transaksi Bank Sampah Online dibuat sebagai
perantara yang dapat digunakan oleh pengguna saat berinteraksi dengan sistem.
Tahap implementasi antarmuka dibuat berdasarkan hasil perancangan antarmuka
pada Gambar 6.2 sampai dengan Gambar 6.7. Berikut merupakan 7 sampel dari
antarmuka yang telah dibuat yaitu, Antarmuka melihat buku tabungan, melihat
detail penjemputan, membuat transaksi penarikan, login, mengubah data akun
nasabah, melihat transaksi penarikan, dan membuat transaksi penyetoran.

6.4.1 Implementasi Antarmuka Membuat Transaksi Penarikan Saldo


Pada implementasi antarmuka membuat transaksi penarikan saldo yang
ditunjukkan pada Gambar 6.2, terdapat formulir yang dapat diisi pengguna saat
membuat transaksi penarikan saldo. Pengguna harus mengisi nomor rekening
nasabah, tanggal penarikan, serta total debet yang ditarik. Kemudian pengguna
dapat melakukan klik simpan, atau klik batal jika ingin membatalkan transaksi.

Gambar 6.2 Antarmuka Membuat Transaksi Penarikan Saldo

6.4.2 Implementasi Antarmuka Mengubah Data Akun Nasabah


Pada implementasi antarmuka mengubah data akun nasabah yang
ditunjukkan pada Gambar 6.3, terdapat data-data dari akun nasabah. Informasi
yang terdapat pada formulir adalah tipe nasabah, username, nama, alamat,
email, dan No HP dari nasabah. Admin dapat mengubah data nama, alamat, email,
dan no HP kemudian melakukan klik pada tombol simpan.

59
Gambar 6.3 Implementasi Antarmuka Mengubah Data Akun Nasabah

6.4.3 Implementasi Antarmuka Melihat Buku Tabungan


Pada implementasi antarmuka melihat buku tabungan yang ditunjukkan
pada Gambar 6.4, terdapat informasi dari nomor rekening, nama, saldo dari
nasabah, dan informasi transaksi buku tabungan. Informasi yang terkandung pada
buku adalah nomo rekening, Tanggal, Debet, Kredit, dan Saldo.

Gambar 6.4 Antarmuka Melihat Buku Tabungan

6.4.4 Implementasi Antarmuka Melihat Detail Penjemputan


Pada implementasi antarmuka melihat detail penjemputan yang
ditunjukkan pada Gambar 6.5, terdapat informasi detail dari penjemputan sampah
nasabah. Informasi yang terkandung adalah nomo rekening, No HP, Tanggal
Penjemputan, Kloter Penjemputan, Driver, No HP Driver, Status, dan Alamat.

60
Gambar 6.5 Antarmuka Melihat Detail Penjemputan

6.4.5 Implementasi Antarmuka Login


Pada implementasi antarmuka login yang ditunjukkan pada Gambar 6.6,
terdapat form yang harus diisii pengguna yaitu username dan password, kemudian
melakukan klik pada tombol login. Terdapat link Lupa password untuk
mengirimkan password milik pengguna.

Gambar 6.6 Implementasi Antarmuka Login

6.4.6 Implementasi Antarmuka Melihat Transaksi Penarikan Saldo


Pada implementasi antarmuka melihat transaksi penarikan saldo yang
ditunjukkan pada Gambar 6.7, terdapat tombol untuk dapat membuat transaksi
penarikan saldo dan terdapat tabel yang menampilkan seluruh data-data
penarikan. Informasi yang terdapat pada tabel adalah nomor nota, nomor
rekening/username, tanggal penarikan, dan total debet. Pengguna dapat
menghapus transaksi dengan melakukan klik pada tombol yang tersedia.

61
Gambar 6.7 Implementasi Antarmuka Melihat Transaksi Penarikan Saldo

6.4.7 Implementasi Antarmuka Membuat Transaksi Penyetoran


Pada implementasi antarmuka membuat transaksi penyetoran yang
ditunjukkan pada Gambar 6.8, terdapat form untuk mengisi identitas nasabah,
form untuk mengisi data sampah kemudian terdapat tombol tambah barang untuk
menambahkan barang pada tabel, kemudian terdapat tabel yang akan
menampilkan data sampah yang disetor dan total harganya. Terdapat 3 tombol,
yaitu tombol hapus, batal, dan simpan.

Gambar 6.8 Implementasi Antarmuka Membuat Transaksi Penyetoran

62
BAB 7 PENGUJIAN

Pada bab ini berisi tahap-tahap pengujian terhadap Sistem Aplikasi Transaksi
Bank Sampah Online dan hasil analisis dari pengujian sistem. Tahap pengujian
dilakukan setelah menyelesaikan tahap implementasi dari sistem. Pengujian yang
akan dilakukan terhadap sistem terdiri dari pengujian unit dengan menggunakan
metode white box testing dan pengujian validasi dengan menggunakan metode
black box testing.

7.1 Pengujian Unit


Pengujian unit dilakukan guna untuk menguji unit seperti komponen, objek,
atau klas dari hasil perancangan sistem. Pada pengujian unit dilakukan dengan
salah satu metode pada White box Testing yaitu, basis path testing. Pengujian unit
dilakukan kepada tiga sampel uji yaitu pada klas c_penarikan, c_akun, dan
c_nasabah.

7.1.1 Pengujian Unit Klas c_penarikan pada Fungsi insertPenarikan()


1. Pseudocode
1 Cek = cekData(session(username), session(password))
1
2 IF (Cek >0) THEN 2
3 Inisialisasi variabel username = POST[username]
4 Inisialisasi variabel noNota = POST[noNota]
5 Inisialisasi variabel tanggal = POST[tanggal]
6 Inisialisasi variabel debet = POST[debet]
7 Inisialisasi variabel akun = GetWhere(username)
8 Inisialisasi variabel saldo = akun[saldo]
9 Inisialisasi variabel saldoAkhir = saldo - debet 3
10 Inisialisasi variabel updateSaldo = saldoAkhir
11 Inisialisasi variabel where = username
12 Inisialisasi array dataPenarikan
13 insertPenarikan = Insert(dataPenarikan)
14 Inisialisasi array dataBuku
15 insertBuku = InsertTransaksi(dataBuku)
16 IF (insertPenarikan > 0) THEN 4
17 Memberikan pesan “Transaksi Berhasil Disimpan”
5
18 Menampilkan halaman melihat transaksi penarikan
19 ELSE THEN
20 Memberikan pesan “Transaksi Tidak Tersimpan” 6
21 Menampilkan halaman membuat transaksi penarikan
22 END IF 7
23 ELSE THEN
8
24 Memberikan pesan “Anda harus Login”
25 END IF 9
Kode Program 7.1 Pseudocode insertPenarikan

63
2. Basic Path Testing
a. Flow Graph

Gambar 7.1 Flow Graph insertPenarikan


b. Cyclomatic Complexity
- V(G) = 3, ada 3 region = R1, R2, R3
- V(G) = 10 edges – 9 nodes + 2 = 3
- V(G) = 2 predicate nodes + 1 = 3
c. Independent Path
- Jalur 1 = 1-2-8-9
- Jalur 2 = 1-2-3-4-5-7-9
- Jalur 3 = 1-2-3-4-6-7-9
Tabel 7.1 Hasil Pengujian Unit pada fungsi insertPenarikan()
No.
No Prosedur Uji Expected Result Result Status
Jalur
1 1 Variabel Cek = 0 Menampilkan Menampilkan
pesan “Anda pesan “Anda Harus
Harus Login Login Terlebih
Terlebih Dahulu” Dahulu” dan Valid
dan menampilkan menampilkan
halaman utama halaman utama
pengunjung. pengunjung.
2 2 Variabel Cek = 1 , Menampilkan Menampilkan
insertPenarikan =1 pesan “Transaksi pesan “Transaksi
Berhasil Berhasil Disimpan” Valid
Disimpan” dan dan menampilkan
menampilkan

64
halaman melihat halaman melihat
transaksi transaksi penarikan
penarikan
3 3 Variabel Cek = 1 , Menampilkan Menampilkan
insertPenarikan=0 pesan “Transaksi pesan “Transaksi
Tidak Tersimpan” Tidak Tersimpan”
dan dan menampilkan
menampilkan halaman membuat Valid
halaman transaksi penarikan
membuat
transaksi
penarikan

7.1.2 Pengujian Unit Klas c_akun pada Fungsi updateAKun()


1. Pseudocode
1 Cek = cekData(session(username), session(password)) 1
2 IF (Cek >0) THEN 2
3 Inisialisasi nama = POST[nama]
4 Inisialisasi username = POST[username]
5 Inisialisasi alamat = POST[alamat]
6 Inisialisasi email = POST[email]
7 Inisialisasi noHP = POST[noHP]
8 Inisialisasi akun = POST[akun] 3
9 Inisialisasi array data = (nama = nama,
10 alamat = alamat,
11 email = email,
12 noHP = noHP)
13 Inisialisasi where = username
14 IF (akun = n) THEN 4
15 Res = UpdateAkun(data, where)
5
16 link = ‘c_akun’
17 ELSE IF (akun = p) THEN 6
18 Res = UpdateAkun(data, where)
7
19 link = ‘c_akun/lihatPetugas’
20 END IF 8
21
22 IF (res > 0) THEN 9
23 Memberikan pesan “Data Berhasil Diubah”
10
24 Menampilkan halaman melihat akun nasabah
25 ELSE THEN
26 Memberikan pesan “Data Tidak Tersimpan” 11
27 Menampilkan halaman melihat akun
28 END IF 12
29 ELSE THEN
30 Memberikan pesan “Anda harus Login Terlebih Dahulu” 13
31 Menampilkan halaman utama pengunjung
32 END IF 14

Kode Program 7.2 Pseudocode updateAkun()

65
2. Basic Path Testing
a. Flow Graph

Gambar 7.2 Flow Graph updateAkun()


b. Cyclomatic Complexity
- V(G) = 4, ada 4 region = R1, R2, R3, R4
- V(G) = 16 edges – 14 nodes + 2 = 4
- V(G) = 3 predicate nodes + 1 = 4
c. Independent Path
- Jalur 1 = 1-2-13-14
- Jalur 2 = 1-2-3-4-5-8-9-10-12-14
- Jalur 3 = 1-2-3-4-6-7-8-9-10-12-14
- Jalur 4 = 1-2-3-4-6-7-8-9-11-12-14
Tabel 7.2 Hasil Pengujian Unit Pada Fungsi updateAkun()
No.
No Prosedur Uji Expected Result Result Status
Jalur
1 1 Variabel Cek = 0 Menampilkan Menampilkan
pesan “Anda pesan “Anda Valid
harus Login harus Login
Terlebih Dahulu” Terlebih Dahulu”

66
dan menampilkan dan menampilkan
halaman melihat halaman melihat
utama utama
pengunjung. pengunjung.
2 2 Variabel Cek = 1, Menampilkan Menampilkan
akun = n, dan pesan “Data pesan “Data
res = 1 Berhasil Berhasil
Disimpan” dan Disimpan” dan Valid
menampilkan menampilkan
halaman melihat halaman melihat
akun nasabah. akun nasabah.
3 3 Variabel Cek = 1, Menampilkan Menampilkan
akun = p, dan pesan “Data pesan “Data
res = 1 Berhasil Berhasil
Disimpan” dan Disimpan” dan Valid
menampilkan menampilkan
halaman melihat halaman melihat
akun petugas. akun petugas.
4 4 Variabel Cek = 1, Menampilkan Menampilkan
akun = p, dan pesan “Data pesan “Data
res = 0 Tidak Disimpan” Tidak Disimpan”
Valid
dan menampilkan dan menampilkan
halaman melihat halaman melihat
akun petugas. akun petugas.

7.1.3 Pengujian Unit Klas c_nasabah pada Fungsi bukuTabungan()


1. Pseudocode
1 Cek = cekData(session(username), session(password)) 1
2 IF (Cek>0) THEN 2
3 Inisialisasi dataBuku = GetWhere(username)
4 inisialiisasi user = GetWhere(username)
5 inisialisasi array data = (dataBuku = dataBuku,
6 username = user[username],
3
7 nama = user[nama],
8 saldoAkhir = user[saldo],
9 tabNasbaah = 2)
10 Menampilkan halaman buku tabungan
11 ELSE THEN
12 alert('Anda harus Login terlebih dahulu!') 4
13 Menampilkan halaman beranda pengunjung
14 END IF 5
Kode Program 7.3 Pseudocode bukuTabungan()

67
2. Basic Path Testing
a. Flow Graph

Gambar 7.3 Flow Graph bukuTabungan()


b. Cyclomatic Complexity
- V(G) = 2, ada 2 region = R1, R2
- V(G) = 6 edges – 6 nodes + 2 = 2
- V(G) = 1 predicate nodes + 1 = 2
c. Independent Path
- Jalur 1 = 1-2-3-5
- Jalur 2 = 1-2-4-5
Tabel 7.3 Hasil Pengujian Unit Pada Fungsi bukuTabungan()
No. Prosedur
No Expected Result Result Status
Jalur Uji
1 1 Variabel Menampilkan Menampilkan
Cek = 1 halaman buku halaman buku Valid
tabungan nasabah. tabungan nasabah.
2 2 Variabel Menampilkan pesan Menampilkan pesan
Cek = 0 “Anda Harus Login “Anda Harus Login
Terlebih Dahulu” Terlebih Dahulu” dan
Valid
dan menampilkan menampilkan
halaman beranda halaman beranda
Pengunjung Pengunjung

7.2 Pengujian Validasi


Pengujian validasi dilakukan untuk memastikan bahwa fungsionalitas sistem
yang telah dibangun berdasarkan hasil analisis kebutuhan dapat berfungsi dengan
baik atau tidak. Dalam melakukan pengujian validasi digunakan metode black box
testing karena hanya akan berfokus pada input dan output dari dari fungsionalitas.
Pengujian dilakukan terhadap semua kebutuhan, terdapat 32 kebutuhan yang
akan diuji.

68
7.2.1 Pengujian Validasi Login
Pada kasus pengujian validasi Login terdapat 3 kasus uji yaitu, kasus uji
Berhasil Login yang ditunjukkan pada Tabel 7.4, kasus uji Login Alternatif 1 yang
ditunjukkan pada Tabel 7.5, dan kasus uji Login Alternatif 2 yang ditunjukkan pada
Tabel 7.6.
1. Kasus Uji Berhasil Login
Tabel 7.4 Kasus Uji Berhasil Login
Nama Kasus Uji Login
Prosedur 1. Aktor mengklik tombol Login pada halaman
utama pengunjung.
2. Aktor mengisi username dan password dengan
benar.
3. Aktor mengklik tombol login.
Hasil yang diharapkan Sistem akan melakukan autentikasi aktor dan
menampilkan halaman utama aktor
Hasil Sistem berhasil melakukan autentikasi aktor dan
menampilkan halaman utama aktor
Status Valid

2. Kasus Uji Login Alternatif 1 : Jika data username atau password tidak valid
Tabel 7.5 Kasus Uji Login Alternatif 1
Nama Kasus Uji Login Alternatif 1 : Jika data username atau
password tidak valid
Prosedur 1. Aktor mengklik tombol Login pada halaman
utama pengunjung.
2. Aktor mengisi username dan password dengan
salah.
3. Aktor mengklik tombol login.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Login Alternatif 2 : Jika terdapat kolom yang tidak terisi
Tabel 7.6 Kasus Uji Login Alternatif 2
Nama Kasus Uji Login Alternatif 2 : Jika terdapat kolom yang tidak
terisi
Prosedur 1. Aktor melakukan klik tombol Login pada
halaman utama pengunjung.

69
2. Aktor tidak lengkap mengisi username dan
mengosongkan password.
3. Aktor melakukan klik tombol login.
Hasil yang diharapkan Sistem akan menampilkan pesan error.
Hasil Sistem menampilkan pesan error.
Status Valid

7.2.2 Pengujian Validasi Lupa Password


Pada kasus pengujian validasi Lupa Password terdapat 3 kasus uji yaitu,
kasus uji Berhasil Lupa Password yang ditunjukkan pada Tabel 7.7, kasus uji Lupa
Password Alternatif 1 yang ditunjukkan pada Tabel 7.8, dan kasus uji Lupa
Password Alternatif 2 yang ditunjukkan pada Tabel 7.9.
1. Kasus Uji Berhasil Lupa Password
Tabel 7.7 Kasus Uji Berhasil Lupa Password
Nama Kasus Uji Lupa Password
Prosedur 1. Aktor mengklik tombol Login pada halaman
utama pengunjung.
2. Aktor mengklik tombol Lupa Password.
3. Aktor mengisi username.
4. Aktor melakukan klik tombol kirim.
Hasil yang diharapkan Sistem akan mengirimkan password aktor melalui
alamat email aktor.
Hasil Sistem mengirimkan password aktor melalui alamat
email aktor.
Status Valid

2. Kasus Uji Lupa Password Alternatif 1 : Jika kolom username tidak terisi dan
aktor menekan tombol kirim.
Tabel 7.8 Kasus Uji Lupa Password Alternatif 1
Nama Kasus Uji Lupa Password Alternatif 1 : Jika kolom username
tidak terisi dan aktor menekan tombol kirim.
Prosedur 1. Aktor mengklik tombol Login pada halaman
utama pengunjung.
2. Aktor mengklik tombol Lupa Password.
3. Aktor mengosongkan username.
4. Aktor melakukan klik tombol kirim.
Hasil yang diharapkan Sistem akan menampilkan pesan error.
Hasil Sistem menampilkan pesan error.
Status Valid

70
3. Kasus Uji Lupa Password Alternatif 2 : Jika aktor menekan tombol Batal.
Tabel 7.9 Kasus Uji Lupa Password Alternatif 2
Nama Kasus Uji Lupa Password Alternatif 2 : Jika aktor menekan
tombol Batal.
Prosedur 1. Aktor mengklik tombol Login pada halaman
utama pengunjung.
2. Aktor mengklik tombol Lupa Password.
3. Aktor mengisi username.
4. Aktor melakukan klik tombol Batal.
Hasil yang diharapkan Sistem akan menampilkan halaman utama
pengunjung
Hasil Sistem menampilkan halaman utama pengunjung
Status Valid

7.2.3 Pengujian Validasi Melihat Profil BSM


Pada kasus pengujian validasi Melihat Profil BSM terdapat 1 kasus uji yaitu,
kasus uji Berhasil Melihat Profil BSM yang ditunjukkan pada Tabel 7.10.
1. Kasus Uji Berhasil Melihat Profil BSM
Tabel 7.10 Kasus Uji Berhasil Melihat Profil BSM
Nama Kasus Uji Melihat Profil BSM
Prosedur 1. Aktor mengklik tombol menu Profil BSM
Hasil yang diharapkan Sistem akan menampilkan halaman Profil BSM
Hasil Sistem menampilkan halaman Profil BSM
Status Valid

7.2.4 Pengujian Validasi Melihat Info nasabah


Pada kasus pengujian validasi Melihat Info nasabah terdapat 1 kasus uji
yaitu, kasus uji Berhasil Melihat Info nasabah yang ditunjukkan pada Tabel 7.11.
1. Kasus Uji Berhasil Melihat Info nasabah
Tabel 7.11 Kasus Uji Berhasil Melihat Info nasabah
Nama Kasus Uji Melihat Info nasabah
Prosedur 1. Aktor mengklik tombol menu Info Nasabah
Hasil yang diharapkan Sistem akan menampilkan halaman Info Nasabah.
Hasil Sistem menampilkan halaman Info Nasabah.
Status Valid

71
7.2.5 Pengujian Validasi Cek Harga Sampah
Pada kasus pengujian validasi Cek Harga Sampah terdapat 1 kasus uji yaitu,
kasus uji Berhasil Cek Harga Sampah yang ditunjukkan pada Tabel 7.12.
1. Kasus Berhasil Uji Cek Harga Sampah
Tabel 7.12 Kasus Uji Berhasil Cek Harga Sampah
Nama Kasus Uji Cek Harga Sampah
Prosedur 1. Aktor mengklik tombol menu Cek Harga BSM.
Hasil yang diharapkan Sistem akan menampilkan halaman Cek Harga BSM.
Hasil Sistem menampilkan halaman Cek Harga BSM.
Status Valid

7.2.6 Pengujian Validasi Melihat Profil Nasabah


Pada kasus pengujian validasi Melihat Profil Nasabah terdapat 2 kasus uji
yaitu, kasus uji Berhasil Melihat Profil Nasabah yang ditunjukkan pada Tabel 7.13
dan kasus uji Melihat Profil Nasabah Alternatif 1 yang ditunjukkan pada Tabel 7.14.
1. Kasus Uji Berhasil Melihat Profil Nasabah
Tabel 7.13 Kasus Uji Berhasil Melihat Profil Nasabah
Nama Kasus Uji Melihat Profil Nasabah
Prosedur 1. Aktor telah login sebagai nasabah.
2. Aktor mengklik tombol menu Profil Nasabah.
Hasil yang diharapkan Sistem akan menampilkan halaman profil nasabah.
Hasil Sistem menampilkan halaman profil Nasabah
Status Valid

2. Kasus Uji Melihat Profil Nasabah Alternatif 1 : Jika aktor tidak valid
Tabel 7.14 Kasus Uji Melihat Profil Nasabah Alternatif 1
Nama Kasus Uji Melihat Profil Nasabah Alternatif 1 : Jika aktor tidak
valid
Prosedur 1. Aktor tidak login sebagai nasabah.
2. Aktor mencoba mengakses profil Nasabah.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

72
7.2.7 Pengujian Validasi Melihat Buku Tabungan
Pada kasus pengujian validasi Melihat Buku Tabungan terdapat 2 kasus uji
yaitu, kasus uji Berhasil Melihat Buku Tabungan yang ditunjukkan pada Tabel 7.15
dan kasus uji Melihat Buku Tabungan Alternatif 1 yang ditunjukkan pada TTabel
7.16.
1. Kasus Uji Berhasil Melihat Buku Tabungan.
Tabel 7.15 Kasus Uji Berhasil Melihat Buku Tabungan
Nama Kasus Uji Melihat Buku Tabungan
Prosedur 1. Aktor telah login sebagai nasabah.
2. Aktor mengklik tombol menu Buku Tabungan.
Hasil yang diharapkan Sistem akan menampilkan halaman buku tabungan.
Hasil Sistem menampilkan halaman buku tabungan
Status Valid

2. Kasus Uji Melihat Buku Tabungan Alternatif 1 : Jika aktor tidak valid
Tabel 7.16 Kasus Uji Melihat Buku Tabungan Alternatif 1
Nama Kasus Uji Melihat Buku Tabungan Alternatif 1 : Jika aktor tidak
valid
Prosedur 1. Aktor tidak login sebagai nasabah.
2. Aktor mencoba mengakses Buku Tabungan.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.8 Pengujian Validasi Memesan Jemput Sampah


Pada kasus pengujian validasi Memesan Jemput Sampah terdapat 4 kasus uji
yaitu, kasus uji Berhasil Memesan Jemput Sampah yang ditunjukkan pada Tabel
7.17, kasus uji Memesan Jemput Sampah Alternatif 1 yang ditunjukkan pada Tabel
7.18, kasus uji Memesan Jemput Sampah Alternatif 2 yang ditunjukkan pada Tabel
7.19, dan kasus uji Memesan Jemput Sampah Alternatif 3 yang ditunjukkan pada
Tabel 7.20.
1. Kasus Uji Berhasil Memesan Jemput Sampah
Tabel 7.17 Kasus Uji Berhasil Memesan Jemput Sampah
Nama Kasus Uji Memesan Jemput Sampah
Prosedur 1. Aktor telah login sebagai nasabah.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Aktor mengklik tombol Pesan Jemput Sampah.

73
4. Aktor mengisi alamat pengambilan,
menentukan titik lokasi penjemputan, kloter
penjemputan, tanggal penjemputan, serta
nomor HP nasabah secara lengkap.
5. Aktor mengklik tombol Buat Pesanan.
Hasil yang diharapkan Sistem akan menyimpan data dan menampilkan
halaman Melihat Riwayat Jemput Sampah.
Hasil Sistem menyimpan data dan menampilkan halaman
Melihat Riwayat Jemput Sampah.
Status Valid

2. Kasus Uji Memesan Jemput Sampah Alternatif 1 : Jika aktor tidak valid
Tabel 7.18 Kasus Uji Memesan Jemput Sampah Alternatif 1
Nama Kasus Uji Memesan Jemput Sampah Alternatif 1 : Jika aktor
tidak valid
Prosedur 1. Aktor tidak login sebagai nasabah.
2. Aktor mencoba mengakses Halaman Riwayat
Jemput Sampah.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Memesan Jemput Sampah Alternatif 2 : Jika terdapat kolom yang
tidak terisi
Tabel 7.19 Kasus Uji Memesan Jemput Sampah Alternatif 2
Nama Kasus Uji Memesan Jemput Sampah Alternatif 2 : Jika
terdapat kolom yang tidak terisi
Prosedur 1. Aktor telah login sebagai nasabah.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Aktor mengklik tombol Pesan Jemput Sampah.
4. Aktor mengisi alamat pengambilan,
menentukan titik lokasi penjemputan, kloter
penjemputan.
5. Aktor mengklik tombol Buat Pesanan.
Hasil yang diharapkan Sistem akan menampilkan pesan error.
Hasil Sistem menampilkan pesan error.
Status Valid

74
4. Kasus Uji Memesan Jemput Sampah Alternatif 3 : Jika aktor menekan tombol
Batal.
Tabel 7.20 Kasus Uji Memesan Jemput Sampah Alternatif 3
Nama Kasus Uji Memesan Jemput Sampah Alternatif 3 : Jika aktor
menekan tombol Batal.
Prosedur 1. Aktor telah login sebagai nasabah.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Aktor mengklik tombol Pesan Jemput Sampah.
4. Aktor mengisi alamat pengambilan,
menentukan titik lokasi penjemputan, kloter
penjemputan, tanggal penjemputan, serta
nomor HP nasabah secara lengkap.
5. Aktor mengklik tombol Batal.
Hasil yang diharapkan Sistem akan menampilkan halaman utama aktor.
Hasil Sistem menampilkan halaman utama aktor.
Status Valid

7.2.9 Pengujian Validasi Melihat Riwayat Jemput Sampah


Pada kasus pengujian validasi Melihat Riwayat Jemput Sampah terdapat 2
kasus uji yaitu, kasus uji Berhasil Melihat Riwayat Jemput Sampah yang
ditunjukkan pada Tabel 7.21, kasus uji Melihat Riwayat Jemput Sampah Alternatif
1 yang ditunjukkan pada Tabel 7.22.
1. Kasus Uji Berhasil Melihat Riwayat Jemput Sampah
Tabel 7.21 Kasus Uji Berhasil Melihat Riwayat Jemput Sampah
Nama Kasus Uji Melihat Riwayat Jemput Sampah
Prosedur 1. Aktor telah login sebagai nasabah.
2. Aktor mengklik tombol menu Jemput Sampah.
Hasil yang diharapkan Sistem akan menampilkan halaman Melihat Riwayat
Jemput Sampah.
Hasil Sistem menampilkan halaman Melihat Riwayat
Jemput Sampah.
Status Valid

2. Kasus Uji Melihat Riwayat Jemput Sampah Alternatif 1 : Jika aktor tidak valid
Tabel 7.22 Kasus Uji Melihat Riwayat Jemput Sampah Alternatif 1
Nama Kasus Uji Melihat Riwayat Jemput Sampah Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai nasabah.
2. Aktor mencoba mengakses Halaman Riwayat
Jemput Sampah.

75
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.10 Pengujian Validasi Melacak Penjemputan Sampah


Pada kasus pengujian validasi Melacak Penjemputan Sampah terdapat 2
kasus uji yaitu, kasus uji Berhasil Melacak Penjemputan Sampah Sampah yang
ditunjukkan pada Tabel 7.23, kasus uji Melacak Penjemputan Sampah Alternatif 1
yang ditunjukkan pada Tabel 7.24.
1. Kasus Uji Berhasil Melacak Penjemputan Sampah
Tabel 7.23 Kasus Uji Berhasil Melacak Penjemputan Sampah
Nama Kasus Uji Melacak Penjemputan Sampah
Prosedur 1. Aktor telah login sebagai nasabah.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Aktor mengklik tombol Lihat Penjemputan
pada salah satu pesanan jemput sampah yang
ada.
Hasil yang diharapkan Sistem akan menampilkan halaman Melacak
Penjemputan Sampah sesuai dengan kode pesanan
yang dipilih.
Hasil Sistem menampilkan halaman Melacak
Penjemputan Sampah sesuai dengan kode pesanan
yang dipilih.
Status Valid

2. Kasus Uji Melacak Penjemputan Sampah Sampah Alternatif 1 : Jika aktor


tidak valid
Tabel 7.24 Kasus Uji Melacak Penjemputan Sampah Alternatif 1
Nama Kasus Uji Melacak Penjemputan Sampah Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai nasabah.
2. Aktor mencoba mengakses Halaman Melacak
Penjemputan Sampah.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

76
7.2.11 Pengujian Validasi Melihat Riwayat Penyetoran
Pada kasus pengujian validasi Melihat Riwayat Penyetoran terdapat 2 kasus
uji yaitu, kasus uji Berhasil Melihat Riwayat Penyetoran yang ditunjukkan pada
Tabel 7.25 dan kasus uji Melihat Riwayat Penyetoran Alternatif 1 yang ditunjukkan
pada Tabel 7.26.
1. Kasus Uji Berhasil Melihat Riwayat Penyetoran.
Tabel 7.25 Kasus Uji Berhasil Melihat Riwayat Penyetoran
Nama Kasus Uji Melihat Riwayat Penyetoran
Prosedur 1. Aktor telah login sebagai nasabah.
2. Aktor mengklik tombol menu Riwayat
Penyetoran Sampah.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat riwayat
penyetoran.
Hasil Sistem menampilkan halaman riwayat penyetoran.
Status Valid

2. Kasus Uji Melihat Riwayat Penyetoran Alternatif 1 : Jika aktor tidak valid.
Tabel 7.26 Kasus Uji Melihat Riwayat Penyetoran Alternatif 1
Nama Kasus Uji Melihat Riwayat Penyetoran Alternatif 1 : Jika aktor
tidak valid
Prosedur 1. Aktor tidak login sebagai nasabah.
2. Aktor mencoba mengakses melihat riwayat
penyetoran
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.12 Pengujian Validasi Melihat Detail Riwayat Penyetoran


Pada kasus pengujian validasi Melihat Detail Riwayat Penyetoran terdapat 2
kasus uji yaitu, kasus uji Berhasil Melihat Detail Riwayat Penyetoran yang
ditunjukkan pada Tabel 7.58 dan kasus uji Melihat Detail Riwayat Penyetoran
Alternatif 1 yang ditunjukkan pada Tabel 7.59.
1. Kasus Uji Berhasil Melihat Detail Riwayat Penyetoran
Tabel 7.27 Kasus Uji Berhasil Melihat Detail Riwayat Penyetoran
Nama Kasus Uji Melihat Detail Riwayat Penyetoran
Prosedur 1. Aktor telah login sebagai nasabah.

77
2. Aktor mengklik tombol menu Riwayat
Penyetoran Sampah.
3. Aktor mengklik tombol Detail pada salah satu
transaksi yang ada.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat detail
riwayat penyetoran sesuai dengan data transaksi
yang dipilih.
Hasil Sistem menampilkan halaman melihat detail
riwayat penyetoran sesuai dengan data transaksi
yang dipilih.
Status Valid

2. Kasus Uji Membuat Detail Riwayat Penyetoran Alternatif 1 : Jika aktor tidak
valid
Tabel 7.28 Kasus Uji Membuat Detail Riwayat Penyetoran Alternatif 1
Nama Kasus Uji Membuat Detail Transaksi Penyetoran Alternatif 1 :
Jika aktor tidak valid
Prosedur 1. Aktor tidak login sebagai nasabah.
2. Aktor mencoba mengakses melihat detail
riwayat penyetoran
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.13 Pengujian Validasi Mengubah Password


Pada kasus pengujian validasi Mengubah Password terdapat 4 kasus uji
yaitu, kasus uji Berhasil Mengubah Password yang ditunjukkan pada Tabel 7.29,
kasus uji Mengubah Password Alternatif 1 yang ditunjukkan pada Tabel 7.30, kasus
uji Mengubah Password Alternatif 2 yang ditunjukkan pada Tabel 7.31, dan kasus
uji Mengubah Password Alternatif 3 yang ditunjukkan pada Tabel 7.32.
1. Kasus Uji Berhasil Mengubah Password.
Tabel 7.29 Kasus Uji Berhasil Mengubah Password
Nama Kasus Uji Mengubah Password
Prosedur 1. Aktor telah login.
2. Aktor mengklik tombol menu Ubah Password.
3. Aktor mengisi password lama dan password
baru secara lengkap.
4. Aktor mengklik tombol Simpan Perubahan.

78
Hasil yang diharapkan Sistem akan menyimpan data dan menampilkan
halaman utama aktor.
Hasil Sistem menyimpan data dan menampilkan halaman
utama aktor.
Status Valid

2. Kasus Uji Mengubah Password Alternatif 1 : Jika aktor tidak valid.


Tabel 7.30 Kasus Uji Mengubah Password Alternatif 1
Nama Kasus Uji Mengubah Password Alternatif 1 : Jika aktor tidak
valid
Prosedur 1. Aktor tidak login sebagai nasabah.
2. Aktor mencoba mengakses mengubah password.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Mengubah Password Alternatif 2 : Jika terdapat kolom yang tidak
terisi.
Tabel 7.31 Kasus Uji Mengubah Password Alternatif 2
Nama Kasus Uji Mengubah Password Alternatif 2 : Jika terdapat
kolom yang tidak terisi
Prosedur 1. Aktor telah login.
2. Aktor mengklik tombol menu Ubah Password.
3. Aktor mengisi password lama.
4. Aktor mengklik tombol Simpan Perubahan.
Hasil yang diharapkan Sistem akan menampilkan pesan error.
Hasil Sistem menampilkan pesan error.
Status Valid

4. Kasus Uji Mengubah Password Alternatif 3 : Jika aktor menekan tombol Batal.
Tabel 7.32 Kasus Uji Mengubah Password Alternatif 3
Nama Kasus Uji Mengubah Password Alternatif 3 : Jika aktor
menekan tombol Batal.
Prosedur 1. Aktor telah login.
2. Aktor mengklik tombol menu Ubah Password.
3. Aktor mengisi password lama dan password
baru secara lengkap.
4. Aktor mengklik tombol Batal.
Hasil yang diharapkan Sistem akan menampilkan halaman utama aktor.

79
Hasil Sistem menampilkan halaman utama aktor.
Status Valid

7.2.14 Pengujian Validasi Logout


Pada kasus pengujian validasi Logout terdapat 1 kasus uji yaitu, kasus uji
Berhasil Logout yang ditunjukkan pada Tabel 7.33.
1. Kasus Uji Berhasil Logout.
Tabel 7.33 Kasus Uji Berhasil Logout
Nama Kasus Uji Mengubah Password
Prosedur 1. Aktor telah login.
2. Aktor mengklik tombol menu Logout.
Hasil yang diharapkan Sistem akan menghapus hak akses aktor dari sistem
dan menampilkan halaman utama pengunjung.
Hasil Sistem menghapus hak akses aktor dari sistem dan
menampilkan halaman utama pengunjung.
Status Valid

7.2.15 Pengujian Validasi Membuat Akun


Pada kasus pengujian validasi Membuat Akun terdapat 4 kasus uji yaitu,
kasus uji Berhasil Membuat Akun yang ditunjukkan pada Tabel 7.34, kasus uji
Membuat Akun Alternatif 1 yang ditunjukkan pada Tabel 7.35, kasus uji Membuat
Akun Alternatif 2 yang ditunjukkan pada Tabel 7.36, dan kasus uji Membuat Akun
Alternatif 3 yang ditunjukkan pada Tabel 7.37.
1. Kasus Uji Berhasil Membuat Akun.
Tabel 7.34 Kasus Uji Berhasil Membuat Akun
Nama Kasus Uji Membuat Akun
Prosedur 1. Aktor telah login sebagain admin.
2. Aktor menekan tombol menu buat akun.
3. Aktor memasukkan data tipe akun, nama,
alamat, email, dan No HP dengan lengkap.
4. Aktor menekan tombol buat akun.
Hasil yang diharapkan Sistem akan menyimpan data dan menampilkan
halaman utama aktor.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat akun nasabah.
Status Valid

80
2. Kasus Uji Membuat Akun Alternatif 1 : Jika aktor tidak valid.
Tabel 7.35 Kasus Uji Membuat Akun Alternatif 1
Nama Kasus Uji Membuat Akun Alternatif 1 : Jika aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba mengakses membuat aktor.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Membuat Akun Alternatif 2 : Jika terdapat kolom yang tidak terisi.
Tabel 7.36 Kasus Uji Membuat Akun Alternatif 2
Nama Kasus Uji Membuat Akun Alternatif 2 : Jika terdapat kolom
yang tidak terisi
Prosedur 1. Aktor telah login sebagain admin.
2. Aktor menekan tombol menu buat akun.
3. Aktor memasukkan data tipe akun, username,
nama, dan alamat.
4. Aktor menekan tombol buat akun.
Hasil yang diharapkan Sistem akan menampilkan pesan error.
Hasil Sistem menampilkan pesan error.
Status Valid

4. Kasus Uji Membuat Akun Alternatif 3 : Jika aktor menekan tombol Batal.
Tabel 7.37 Kasus Uji Membuat Akun Alternatif 3
Nama Kasus Uji Membuat Akun Alternatif 3 : Jika aktor menekan
tombol Batal.
Prosedur 1. Aktor telah login sebagain admin.
2. Aktor menekan tombol menu buat akun.
3. Aktor memasukkan data tipe akun, username,
nama, alamat, dan email.
4. Aktor menekan tombol Batal.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat akun
nasabah.
Hasil Sistem menampilkan halaman melihat akun
nasabah.
Status Valid

81
7.2.16 Pengujian Validasi Melihat Akun Nasabah
Pada kasus pengujian validasi Melihat Akun Nasabah terdapat 2 kasus uji
yaitu, kasus uji Berhasil Melihat Akun Nasabah yang ditunjukkan pada Tabel 7.38
dan kasus uji Melihat Akun Nasabah Alternatif 1 yang ditunjukkan pada Tabel 7.39.
1. Kasus Uji Berhasil Melihat Akun Nasabah.
Tabel 7.38 Kasus Uji Berhasil Melihat Akun Nasabah
Nama Kasus Uji Melihat Akun Nasabah
Prosedur 1. Aktor telah login sebagain admin.
2. Aktor menekan tombol menu akun nasabah.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat akun
nasabah.
Hasil Sistem menampilkan halaman melihat akun
nasabah.
Status Valid

2. Kasus Uji Melihat Akun Nasabah Alternatif 1 : Jika aktor tidak valid.
Tabel 7.39 Kasus Uji Melihat Akun Nasabah Alternatif 1
Nama Kasus Uji Melihat Akun Nasabah Alternatif 1 : Jika aktor tidak
valid
Prosedur 1. Aktor tidak login.
2. Aktor mencoba mengakses halaman melihat
akun nasabah.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.17 Pengujian Validasi Mengubah Data Nasabah


Pada kasus pengujian validasi Mengubah Data Nasabah terdapat 3 kasus uji
yaitu, kasus uji Berhasil Mengubah Data Nasabah yang ditunjukkan pada Tabel
7.40, kasus uji Mengubah Data Nasabah Alternatif 1 yang ditunjukkan pada Tabel
7.41, kasus uji Mengubah Data Nasabah Alternatif 2 yang ditunjukkan pada Tabel
7.42.
1. Kasus Uji Berhasil Mengubah Data Nasabah.
Tabel 7.40 Kasus Uji Berhasil Mengubah Data Nasabah
Nama Kasus Uji Mengubah Data Nasabah
Prosedur 1. Aktor telah login.
2. Aktor mengklik tombol menu akun nasabah.

82
3. Aktor mengklik tombol edit pada salah satu
akun nasabah.
4. Aktor mengubah data yang akan diubah.
5. Aktor mengklik tombol Simpan Perubahan.
Hasil yang diharapkan Sistem akan menyimpan data dan menampilkan
halaman melihat akun nasabah.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat akun nasabah.
Status Valid

2. Kasus Uji Mengubah Data Nasabah Alternatif 1 : Jika aktor tidak valid.
Tabel 7.41 Kasus Uji Mengubah Data Nasabah Alternatif 1
Nama Kasus Uji Mengubah Data Nasabah Alternatif 1 : Jika aktor
tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba mengakses mengubah data
nasbah.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Mengubah Data Nasabah Alternatif 2 : Jika penyimpanan data


gagal.
Tabel 7.42 Kasus Uji Mengubah Data Nasabah Alternatif 2
Nama Kasus Uji Mengubah Data Nasabah Alternatif 1 : Jika
penyimpanan data gagal
Prosedur 1. Aktor login sebagai admin.
2. Aktor mengisi data dengan salah.
3. Aktor mengklik tombol simpan.
4. Sistem menampilkan pesan error.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman mengubah data akun.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman mengubah data akun.
Status Valid

83
7.2.18 Pengujian Validasi Menghapus Akun Nasabah
Pada kasus pengujian validasi Menghapus Akun Nasabah terdapat 3 kasus
uji yaitu, kasus uji Berhasil Menghapus Akun Nasabah yang ditunjukkan pada Tabel
7.43, kasus uji Menghapus Akun Nasabah Alternatif 1 yang ditunjukkan pada Tabel
7.44, dan kasus uji Menghapus Akun Nasabah Alternatif 2 yang ditunjukkan pada
Tabel 7.45.
1. Kasus Uji Berhasil Menghapus Akun Nasabah.
Tabel 7.43 Kasus Uji Berhasil Menghapus Akun Nasabah
Nama Kasus Uji Menghapus Akun Nasabah
Prosedur 1. Aktor telah login.
2. Aktor mengklik tombol menu akun nasabah.
3. Aktor mengklik tombol hapus pada salah satu
akun.
4. Aktor mengklik tombol Ya.
Hasil yang diharapkan Sistem akan menghapus data dan menampilkan
halaman melihat akun nasabah.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat akun nasabah.
Status Valid

2. Kasus Uji Menghapus Akun Nasabah Alternatif 1 : Jika aktor tidak valid.
Tabel 7.44 Kasus Uji Menghapus Akun Nasabah Alternatif 1
Nama Kasus Uji Menghapus Akun Nasabah Alternatif 1 : Jika aktor
tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba menghapus akun nasabah.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Menghapus Akun Nasabah Alternatif 2 : Jika aktor menekan tombol
tidak.
Tabel 7.45 Kasus Uji Menghapus Akun Nasabah Alternatif 2
Nama Kasus Uji Menghapus Akun Nasabah Alternatif 2 : Jika aktor
menekan tombol tidak
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu akun nasabah.

84
3. Aktor mengklik tombol hapus pada salah satu
akun.
4. Aktor mengklik tombol Tidak
Hasil yang diharapkan Sistem akan menampilkan halaman melihat akun
nasabah.
Hasil Sistem menampilkan pesan halaman melihat akun
nasabah.
Status Valid

7.2.19 Pengujian Validasi Melihat Akun Petugas


Pada kasus pengujian validasi Melihat Akun Petugas terdapat 2 kasus uji
yaitu, kasus uji Berhasil Melihat Akun Petugas yang ditunjukkan pada Tabel 7.46
dan kasus uji Melihat Akun Petugas Alternatif 1 yang ditunjukkan pada Tabel 7.47.
1. Kasus Uji Berhasil Melihat Akun Petugas
Tabel 7.46 Kasus Uji Berhasil Melihat Akun Petugas
Nama Kasus Uji Melihat Akun Petugas
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor menekan tombol menu akun Petugas.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat akun
Petugas.
Hasil Sistem menampilkan halaman melihat akun
Petugas.
Status Valid

2. Kasus Uji Melihat Akun Petugas Alternatif 1 : Jika aktor tidak valid.
Tabel 7.47 Kasus Uji Melihat Akun Petugas Alternatif 1
Nama Kasus Uji Melihat Akun Petugas Alternatif 1 : Jika aktor tidak
valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba mengakses halaman melihat
akun Petugas.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

85
7.2.20 Pengujian Validasi Mengubah Data Petugas
Pada kasus pengujian validasi Mengubah Data Petugas terdapat 3 kasus uji
yaitu, kasus uji Berhasil Mengubah Data Petugas yang ditunjukkan pada Tabel
7.48, kasus uji Mengubah Data Petugas Alternatif 1 yang ditunjukkan pada Tabel
7.49, dan kasus uji Mengubah Data Petugas Alternatif 2 yang ditunjukkan pada
Tabel 7.50.
1. Kasus Uji Berhasil Mengubah Data Petugas.
Tabel 7.48 Kasus Uji Berhasil Mengubah Data Petugas
Nama Kasus Uji Mengubah Data Petugas
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu akun Petugas.
3. Aktor mengklik tombol edit pada salah satu
Petugas.
4. Aktor mengubah data yang akan diubah dan
semua data lengkap terisi.
5. Aktor mengklik tombol Simpan Perubahan.
Hasil yang diharapkan Sistem akan menyimpan data dan menampilkan
halaman melihat akun Petugas.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat akun Petugas.
Status Valid

2. Kasus Uji Mengubah Data Petugas Alternatif 1 : Jika terdapat kolom yang
tidak terisi.
Tabel 7.49 Kasus Uji Mengubah Data Petugas Alternatif 1
Nama Kasus Uji Mengubah Data Petugas Alternatif 1 : Jika terdapat
kolom yang tidak terisi
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu akun Petugas.
3. Aktor mengklik tombol edit pada salah satu
Petugas.
4. Aktor tidak mengisi data secara lengkap.
5. Aktor mengklik tombol Simpan Perubahan.
Hasil yang diharapkan Sistem akan menampilkan pesan error.
Hasil Sistem menampilkan pesan error.
Status Valid

86
3. Kasus Uji Mengubah Data Petugas Alternatif 2 : Jika aktor menekan tombol
Batal.
Tabel 7.50 Kasus Uji Mengubah Data Petugas Alternatif 2
Nama Kasus Uji Mengubah Data Petugas Alternatif 2 : Jika aktor
menekan tombol Batal.
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu akun Petugas.
3. Aktor mengklik tombol edit pada salah satu
Petugas.
4. Aktor mengubah data yang akan diubah dan
semua data lengkap terisi.
5. Aktor mengklik tombol Batal.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat akun
Petugas.
Hasil Sistem menampilkan halaman melihat akun
Petugas.
Status Valid

7.2.21 Pengujian Validasi Menghapus Akun Petugas


Pada kasus pengujian validasi Menghapus Akun Petugas terdapat 3 kasus uji
yaitu, kasus uji Berhasil Menghapus Akun Petugas yang ditunjukkan pada Tabel
7.51, kasus uji Menghapus Akun Petugas Alternatif 1 yang ditunjukkan pada Tabel
7.52, dan kasus uji Menghapus Akun Petugas Alternatif 2 yang ditunjukkan pada
Tabel 7.53.
1. Kasus Uji Berhasil Menghapus Akun Petugas
Tabel 7.51 Kasus Uji Berhasil Menghapus Akun Petugas
Nama Kasus Uji Menghapus Akun Petugas
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu akun Petugas.
3. Aktor mengklik tombol hapus pada salah satu
akun.
4. Aktor mengklik tombol Ya.
Hasil yang diharapkan Sistem akan menghapus data dan menampilkan
halaman melihat akun Petugas.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat akun Petugas.
Status Valid

87
2. Kasus Uji Menghapus Akun Petugas Alternatif 1 : Jika aktor tidak valid
Tabel 7.52 Kasus Uji Menghapus Akun Petugas Alternatif 1
Nama Kasus Uji Menghapus Akun Nasabah Alternatif 1 : Jika aktor
tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba menghapus akun Petugas.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Menghapus Akun Petugas Alternatif 2 : Jika aktor menekan tombol
tidak.
Tabel 7.53 Kasus Uji Menghapus Akun Petugas Alternatif 2
Nama Kasus Uji Menghapus Akun Petugas Alternatif 2 : Jika aktor
menekan tombol tidak
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu akun Petugas.
3. Aktor mengklik tombol hapus pada salah satu
akun.
4. Aktor mengklik tombol Tidak.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat akun
Petugas.
Hasil Sistem menampilkan pesan halaman melihat akun
Petugas.
Status Valid

7.2.22 Pengujian Validasi Verifikasi Transaksi Penyetoran


Pada kasus pengujian validasi Verifikasi Transaksi Penyetoran terdapat 2
kasus uji yaitu, kasus uji Berhasil Verifikasi Transaksi Penyetoran yang ditunjukkan
pada Tabel 7.56 dan kasus uji Verifikasi Transaksi Penyetoran Alternatif 1 yang
ditunjukkan pada Tabel 7.57.
1. Kasus Uji Berhasil Verifikasi Transaksi Penyetoran.
Tabel 7.54 Kasus Uji Berhasil Verifikasi Transaksi Penyetoran
Nama Kasus Uji Verifikasi Transaksi Penyetoran
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol Verifiaksi.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat detail
penjemputan.

88
Hasil Sistem menampilkan halaman melihat detail
penjemputan.
Status Valid

2. Kasus Uji Verifikasi Transaksi Penyetoran Alternatif 1 : Jika aktor tidak valid.
Tabel 7.55 Kasus Uji Verifikasi Transaksi Penyetoran Alternatif 1
Nama Kasus Uji Verifikasi Transaksi Penyetoran Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba untuk Verifikasi transaksi
penyetoran.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.23 Pengujian Validasi Melihat Transaksi Penyetoran


Pada kasus pengujian validasi Melihat Transaksi Penyetoran terdapat 2
kasus uji yaitu, kasus uji Berhasil Melihat Transaksi Penyetoran yang ditunjukkan
pada Tabel 7.56 dan kasus uji Melihat Transaksi Penyetoran Alternatif 1 yang
ditunjukkan pada Tabel 7.57.
1. Kasus Uji Berhasil Melihat Transaksi Penyetoran.
Tabel 7.56 Kasus Uji Berhasil Melihat Transaksi Penyetoran
Nama Kasus Uji Melihat Transaksi Penyetoran
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu Penyetoran
Sampah.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat
transaksi penyetoran.
Hasil Sistem menampilkan halaman transaksi
penyetoran.
Status Valid

2. Kasus Uji Melihat Transaksi Penyetoran Alternatif 1 : Jika aktor tidak valid.
Tabel 7.57 Kasus Uji Melihat Transaksi Penyetoran Alternatif 1
Nama Kasus Uji Melihat Transaksi Penyetoran Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin.

89
2. Aktor mencoba mengakses melihat transaksi
penyetoran
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.24 Pengujian Validasi Melihat Detail Transaksi Penyetoran


Pada kasus pengujian validasi Melihat Detail Transaksi Penyetoran terdapat
2 kasus uji yaitu, kasus uji Berhasil Melihat Detail Transaksi Penyetoran yang
ditunjukkan pada Tabel 7.58 dan kasus uji Melihat Detail Transaksi Penyetoran
Alternatif 1 yang ditunjukkan pada Tabel 7.59.
1. Kasus Uji Berhasil Melihat Detail Transaksi Penyetoran
Tabel 7.58 Kasus Uji Berhasil Melihat Detail Transaksi Penyetoran
Nama Kasus Uji Melihat Detail Transaksi Penyetoran
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu Penyetoran
Sampah.
3. Aktor mengklik tombol Detail pada salah satu
transaksi yang ada.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat detail
transaksi penyetoran sesuai dengan data transaksi
yang dipilih.
Hasil Sistem menampilkan halaman melihat detail
transaksi penyetoran sesuai dengan data transaksi
yang dipilih.
Status Valid

2. Kasus Uji Melihat Detail Transaksi Penyetoran Alternatif 1 : Jika aktor tidak
valid
Tabel 7.59 Kasus Uji Melihat Detail Transaksi Penyetoran Alternatif 1
Nama Kasus Uji Melihat Detail Transaksi Penyetoran Alternatif 1 :
Jika aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba mengakses melihat detail
transaksi penyetoran
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

90
7.2.25 Pengujian Validasi Menghapus Transaksi Penyetoran
Pada kasus pengujian validasi Menghapus Transaksi Penyetoran terdapat 3
kasus uji yaitu, kasus uji Berhasil Menghapus Transaksi Penyetoran yang
ditunjukkan pada Tabel 7.60, kasus uji Menghapus Transaksi Penyetoran Alternatif
1 yang ditunjukkan pada Tabel 7.61 dan kasus uji Menghapus Transaksi
Penyetoran Alternatif 2 yang ditunjukkan pada Tabel 7.62.
1. Kasus Uji Berhasil Menghapus Transaksi Penyetoran
Tabel 7.60 Kasus Uji Berhasil Menghapus Transaksi Penyetoran
Nama Kasus Uji Menghapus Transaksi Penyetoran
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu Penyetoran
Sampah.
3. Aktor mengklik tombol hapus pada salah satu
data transaksi.
4. Aktor mengklik tombol Ya.
Hasil yang diharapkan Sistem akan menghapus data dan menampilkan
halaman melihat transaksi penyetoran.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat melihat transaksi penyetoran.
Status Valid

2. Kasus Uji Menghapus Transaksi Penyetoran Alternatif 1 : Jika aktor tidak


valid
Tabel 7.61 Kasus Uji Menghapus Transaksi Penyetoran Alternatif 1
Nama Kasus Uji Menghapus Transaksi Penyetoran Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba menghapus data transaksi.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Menghapus Transaksi Penyetoran Alternatif 2 : Jika aktor menekan


tombol tidak.
Tabel 7.62 Kasus Uji Menghapus Transaksi Penyetoran Alternatif 2
Nama Kasus Uji Menghapus Transaksi Penyetoran Alternatif 2 : Jika
aktor menekan tombol tidak
Prosedur 1. Aktor telah login sebagai admin.

91
2. Aktor mengklik tombol menu Penyetoran
Sampah.
3. Aktor mengklik tombol hapus pada salah satu
data transaksi.
4. Aktor mengklik tombol Tidak.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat transaksi
penyetoran.
Hasil Sistem menampilkan pesan halaman melihat
transaksi penyetoran.
Status Valid

7.2.26 Pengujian Validasi Membuat Transaksi Penarikan


Pada kasus pengujian validasi Membuat Transaksi Penarikan terdapat 4
kasus uji yaitu, kasus uji Berhasil Membuat Transaksi Penarikan yang ditunjukkan
pada Tabel 7.63, kasus uji Membuat Transaksi Penarikan Alternatif 2 yang
ditunjukkan pada Tabel 7.64, kasus uji Membuat Transaksi Penarikan Alternatif 2
yang ditunjukkan pada Tabel 7.65, dan kasus uji Membuat Transaksi Penarikan
Alternatif 2 yang ditunjukkan pada Tabel 7.66.
1. Kasus Uji Berhasil Membuat Transaksi Penarikan.
Tabel 7.63 Kasus Uji Berhasil Membuat Transaksi Penarikan
Nama Kasus Uji Membuat Transaksi Penarikan
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu Penarikan Saldo.
3. Aktor mengklik tombol Tambah Transaksi
Penarikan
4. Aktor mengisi data tanggal penarikan, nomor
rekening, dan total debet penarikan
5. Aktor mengklik tombol Simpan.
Hasil yang diharapkan Sistem akan menyimpan data dan menampilkan
halaman melihat transaksi Penarikan.
Hasil Sistem menyimpan data dan menampilkan halaman
transaksi Penarikan.
Status Valid

2. Kasus Uji Membuat Transaksi Penarikan Alternatif 1 : Jika aktor tidak valid
Tabel 7.64 Kasus Uji Membuat Transaksi Penarikan Alternatif 1
Nama Kasus Uji Membuat Transaksi Penarikan Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba mengakses membuat transaksi
penarikan.

92
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Membuat Transaksi Penarikan Alternatif 2 : Jika transaksi gagal


Tabel 7.65 Kasus Uji Membuat Transaksi Penarikan Alternatif 2
Nama Kasus Uji Membuat Transaksi Penarikan Alternatif 2 : Jika
transaksi gagal
Prosedur 1. Aktor login sebagai admin.
2. Aktor mengisi data dengan salah.
3. Aktor mengklik tombol simpan.
4. Sistem menampilkan pesan error.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman membuat penarikan saldo.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman membuat penarikan saldo.
Status Valid

4. Kasus Uji Membuat Transaksi Penarikan Alternatif 3 : Jika saldo tidak cukup.
Tabel 7.66 Kasus Uji Membuat Transaksi Penarikan Alternatif 3
Nama Kasus Uji Membuat Transaksi Penarikan Alternatif 3 : Jika saldo
tidak cukup
Prosedur 1. Aktor login sebagai admin.
2. Aktor mengisi debet melebihi jumlah saldo yang
dimiliki nasabah.
3. Sistem menampilkan pesan error.
Hasil yang diharapkan Sistem akan menampilkan pesan error.
Hasil Sistem menampilkan pesan error.
Status Valid

7.2.27 Pengujian Validasi Melihat Transaksi Penarikan


Pada kasus pengujian validasi Melihat Transaksi Penarikan terdapat 2 kasus
uji yaitu, kasus uji Berhasil Melihat Transaksi Penarikan yang ditunjukkan pada
Tabel 7.67 dan kasus uji Melihat Transaksi Penarikan Alternatif 1 yang ditunjukkan
pada Tabel 7.68.
1. Kasus Uji Berhasil Melihat Transaksi Penarikan
Tabel 7.67 Kasus Uji Berhasil Melihat Transaksi Penarikan
Nama Kasus Uji Melihat Transaksi Penarikan
Prosedur 1. Aktor telah login sebagai admin.

93
2. Aktor mengklik tombol menu Penarikan Saldo.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat Transaksi
Penarikan.
Hasil Sistem menampilkan halaman Transaksi Penarikan.
Status Valid

2. Kasus Uji Melihat Transaksi Penarikan Alternatif 1 : Jika aktor tidak valid
Tabel 7.68 Kasus Uji Melihat Transaksi Penarikan Alternatif 1
Nama Kasus Uji Melihat Transaksi Penarikan Alternatif 1 : Jika aktor
tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba mengakses melihat transaksi
penyetoran
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.28 Pengujian Validasi Menghapus Transaksi Penarikan


Pada kasus pengujian validasi Menghapus Transaksi Penarikan terdapat 3
kasus uji yaitu, kasus uji Berhasil Menghapus Transaksi Penarikan yang ditunjukkan
pada Tabel 7.69, kasus uji Menghapus Transaksi Penarikan Alternatif 1 yang
ditunjukkan pada Tabel 7.70, dan kasus uji Menghapus Transaksi Penarikan
Alternatif 2 yang ditunjukkan pada Tabel 7.71.
1. Kasus Uji Berhasil Menghapus Transaksi Penarikan
Tabel 7.69 Kasus Uji Berhasil Menghapus Transaksi Penarikan
Nama Kasus Uji Menghapus Transaksi Penarikan
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu Penarikan Saldo.
3. Aktor mengklik tombol hapus pada salah satu
data transaksi.
4. Aktor mengklik tombol Ya.
Hasil yang diharapkan Sistem akan menghapus data dan menampilkan
halaman melihat transaksi Penarikan.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat melihat transaksi Penarikan.
Status Valid

94
2. Kasus Uji Menghapus Transaksi Penarikan Alternatif 1 : Jika aktor tidak valid
Tabel 7.70 Kasus Uji Menghapus Transaksi Penarikan Alternatif 1
Nama Kasus Uji Menghapus Transaksi Penarikan Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin.
2. Aktor mencoba menghapus data transaksi.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Menghapus Transaksi Penarikan Alternatif 2 : Jika aktor menekan


tombol tidak.
Tabel 7.71 Kasus Uji Menghapus Transaksi Penarikan Alternatif 2
Nama Kasus Uji Menghapus Transaksi Penarikan Alternatif 2 : Jika
aktor menekan tombol tidak
Prosedur 1. Aktor telah login sebagai admin.
2. Aktor mengklik tombol menu Penarikan Saldo.
3. Aktor mengklik tombol hapus pada salah satu
data transaksi.
4. Aktor mengklik tombol Tidak.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat transaksi
penarikan.
Hasil Sistem menampilkan pesan halaman melihat
transaksi penarikan.
Status Valid

7.2.29 Pengujian Validasi Melihat Penjemputan Sampah


Pada kasus pengujian validasi Melihat Penjemputan Sampah terdapat 2
kasus uji yaitu, kasus uji Berhasil Melihat Penjemputan Sampah yang ditunjukkan
pada Tabel 7.72 dan kasus uji Melihat Penjemputan Sampah Alternatif 1 yang
ditunjukkan pada Tabel 7.73.
1. Kasus Uji Berhasil Melihat Penjemputan Sampah
Tabel 7.72 Kasus Uji Berhasil Melihat Penjemputan Sampah
Nama Kasus Uji Melihat Penjemputan Sampah
Prosedur 1. Aktor telah login sebagai admin/driver.
2. Aktor mengklik tombol menu Jemput Sampah.

95
Hasil yang diharapkan Sistem akan menampilkan halaman melihat
Penjemputan Sampah.
Hasil Sistem menampilkan halaman melihat melihat
Penjemputan Sampah.
Status Valid

2. Kasus Uji Melihat Penjemputan Sampah Alternatif 1 : Jika aktor tidak valid
Tabel 7.73 Kasus Uji Melihat Penjemputan Sampah Alternatif 1
Nama Kasus Uji Melihat Penjemputan Sampah Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin/driver.
2. Aktor mencoba melihat penjemputan sampah.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.30 Pengujian Validasi Melihat Detail Penjemputan


Pada kasus pengujian validasi Melihat Detail Penjemputan terdapat 2 kasus
uji yaitu, kasus uji Berhasil Melihat Detail Penjemputan yang ditunjukkan pada
Tabel 7.74 dan kasus uji Melihat Detail Penjemputan Alternatif 1 yang ditunjukkan
pada Tabel 7.75.
1. Kasus Uji Berhasil Melihat Detail Penjemputan
Tabel 7.74 Kasus Uji Berhasil Melihat Detail Penjemputan
Nama Kasus Uji Melihat Detail Penjemputan
Prosedur 1. Aktor telah login sebagai admin/driver.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Mengklik tombol Detail pada salah satu data
yang dipilih.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat Detail
Penjemputan Sampah.
Hasil Sistem menampilkan halaman melihat Detail
Penjemputan Sampah.
Status Valid

96
2. Kasus Uji Melihat Detail Penjemputan Alternatif 1 : Jika aktor tidak valid
Tabel 7.75 Kasus Uji Melihat Detail Penjemputan Alternatif 1
Nama Kasus Uji Melihat Detail Penjemputan Alternatif 1 : Jika aktor
tidak valid
Prosedur 1. Aktor tidak login sebagai admin/driver.
2. Aktor mencoba melihat detail penjemputan.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

7.2.31 Pengujian Validasi Mengubah Status Penjemputan


Pada kasus pengujian validasi Mengubah Status Penjemputan terdapat 5
kasus uji yaitu, kasus uji Berhasil Mengubah Status Penjemputan yang ditunjukkan
pada Tabel 7.76, kasus uji Mengubah Status Penjemputan Alternatif 1 yang
ditunjukkan pada Tabel 7.77, kasus uji Mengubah Status Penjemputan Alternatif 2
yang ditunjukkan pada Tabel 7.78, kasus uji Mengubah Status Penjemputan
Alternatif 3 yang ditunjukkan pada Tabel 7.79, dan kasus uji Mengubah Status
Penjemputan Alternatif 4 yang ditunjukkan pada Tabel 7.80.
1. Kasus Uji Berhasil Mengubah Status Penjemputan
Tabel 7.76 Kasus Uji Berhasil Mengubah Status Penjemputan
Nama Kasus Uji Mengubah Status Penjemputan
Prosedur 1. Aktor telah login sebagai admin/driver.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Aktor mengklik tombol Detail pada data yang
dipilih.
4. Aktor mengklik tombol untuk mengubah status.
5. Aktor mengklik tombol Ya.
Hasil yang diharapkan Sistem akan mengubah status penjemputan dan
menampilkan halaman melihat detail transaksi
penarikan.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat melihat transaksi Penarikan.
Status Valid

97
2. Kasus Uji Mengubah Status Penjemputan Alternatif 1 : Jika aktor tidak valid
Tabel 7.77 Kasus Uji Mengubah Status Penjemputan Alternatif 1
Nama Kasus Uji Mengubah Status Penjemputan Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai admin/driver.
2. Aktor mencoba mengubah status penjemputan.
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Mengubah Status Penjemputan Alternatif 2 : Jika aktor menekan


tombol tidak.
Tabel 7.78 Kasus Uji Mengubah Status Penjemputan Alternatif 2
Nama Kasus Uji Mengubah Status Penjemputan Alternatif 2 : Jika
aktor menekan tombol tidak
Prosedur 1. Aktor telah login sebagai admin/driver.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Aktor mengklik tombol Detail pada data yang
dipilih.
4. Aktor mengklik tombol untuk mengubah status.
5. Aktor mengklik tombol Tidak.
Hasil yang diharapkan Sistem akan mengubah status penjemputan dan
menampilkan halaman melihat detail transaksi
penarikan.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat melihat transaksi Penarikan.
Status Valid

4. Kasus Uji Mengubah Status Penjemputan Alternatif 3 : Jika aktor menekan


tombol tolak penjemputan.
Tabel 7.79 Kasus Uji Mengubah Status Penjemputan Alternatif 3
Nama Kasus Uji Mengubah Status Penjemputan Alternatif 3 : Jika
aktor menolak penjemputan.
Prosedur 1. Aktor telah login sebagai admin/driver.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Aktor mengklik tombol Detail pada data yang
dipilih.
4. Aktor mengklik tombol tolak penjemputan
status.

98
5. Aktor memasukkan alasan penolakan.
6. Aktor mengklik tombol Ya.
Hasil yang diharapkan Sistem akan mengubah status penjemputan dan
menampilkan halaman melihat detail transaksi
penarikan.
Hasil Sistem menyimpan data dan menampilkan halaman
melihat melihat transaksi Penarikan.
Status Valid

5. Kasus Uji Mengubah Status Penjemputan Alternatif 4 : Jika aktor menekan


tombol tidak pada menolak penjemputan
Tabel 7.80 Kasus Uji Mengubah Status Penjemputan Alternatif 4
Nama Kasus Uji Mengubah Status Penjemputan Alternatif 4 : Jika
aktor menekan tombol tidak pada menolak
penjemputan
Prosedur 1. Aktor telah login sebagai admin/driver.
2. Aktor mengklik tombol menu Jemput Sampah.
3. Aktor mengklik tombol Detail pada data yang
dipilih.
4. Aktor mengklik tombol tolak penjemputan
status.
5. Aktor memasukkan alasan penolakan.
6. Aktor mengklik tombol Tidak.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat detail
transaksi penarikan.
Hasil Sistem menampilkan halaman melihat melihat
transaksi Penarikan.
Status Valid

7.2.32 Pengujian Validasi Membuat Transaksi Penyetoran


Pada kasus pengujian validasi Membuat Transaksi Penyetoran terdapat 5
kasus uji yaitu, kasus uji Berhasil Membuat Transaksi Penyetoran yang ditunjukkan
pada Tabel 7.81, kasus uji Membuat Transaksi Penyetoran Alternatif 1 yang
ditunjukkan pada Tabel 7.82, kasus uji Membuat Transaksi Penyetoran Alternatif
2 yang ditunjukkan pada Tabel 7.83, kasus uji Membuat Transaksi Penyetoran
Alternatif 3 yang ditunjukkan pada Tabel 7.84, dan kasus uji Membuat Transaksi
Penyetoran Alternatif 4 yang ditunjukkan pada Tabel 7.85.
1. Kasus Uji Berhasil Membuat Transaksi Penyetoran
Tabel 7.81 Kasus Uji Berhasil Membuat Transaksi Penyetoran
Nama Kasus Uji Membuat Transaksi Penyetoran
Prosedur 1. Aktor telah login sebagai driver.

99
2. Aktor mengisi data Tanggal penyetoran dan
nomor rekening.
3. Aktor mengisi kode sampah dan berat sampah
kemudian klik tombol Tambah.
4. Aktor mengklik tombol Simpan.
Hasil yang diharapkan Sistem akan menyimpan data dan menampilkan
halaman melihat detail penjemputan.
Hasil Sistem menyimpan data dan menampilkan halaman
detail penjemputan.
Status Valid

2. Kasus Uji Membuat Transaksi Penyetoran Alternatif 1 : Jika aktor tidak valid
Tabel 7.82 Kasus Uji Membuat Transaksi Penyetoran Alternatif 1
Nama Kasus Uji Membuat Transaksi Penyetoran Alternatif 1 : Jika
aktor tidak valid
Prosedur 1. Aktor tidak login sebagai driver.
2. Aktor mencoba mengakses membuat transaksi
penyetoran
Hasil yang diharapkan Sistem akan menampilkan pesan error dan
menampilkan halaman utama pengunjung.
Hasil Sistem menampilkan pesan error dan menampilkan
halaman utama pengunjung.
Status Valid

3. Kasus Uji Membuat Transaksi Penyetoran Alternatif 2 : Jika terdapat kolom


yang tidak terisi
Tabel 7.83 Kasus Uji Membuat Transaksi Penyetoran Alternatif 2
Nama Kasus Uji Membuat Transaksi Penyetoran Alternatif 2 : Jika
terdapat kolom yang tidak terisi
Prosedur 1. Aktor telah login sebagai driver.
2. Aktor mengisi data nomor rekening.
3. Aktor mengisi kode sampah dan berat sampah
kemudian klik tombol Tambah.
4. Aktor mengklik tombol Simpan.
Hasil yang diharapkan Sistem akan menampilkan pesan error.
Hasil Sistem menampilkan pesan error.
Status Valid

100
4. Kasus Uji Membuat Transaksi Penyetoran Alternatif 3 : Jika aktor menekan
tombol Batal.
Tabel 7.84 Kasus Uji Membuat Transaksi Penyetoran Alternatif 3
Nama Kasus Uji Membuat Transaksi Penyetoran 3 : Jika aktor
menekan tombol Batal.
Prosedur 1. Aktor telah login sebagai driver.
2. Aktor mengisi data tanggal penyetoran dan
nomor rekening.
3. Aktor mengisi kode sampah dan berat sampah
kemudian klik tombol Tambah.
4. Aktor mengklik tombol Batal.
Hasil yang diharapkan Sistem akan menampilkan halaman melihat detail
penjemputan.
Hasil Sistem menampilkan halaman melihat detail
penjemputan.
Status Valid

5. Kasus Uji Membuat Transaksi Penyetoran Alternatif 4 : Jika aktor menghapus


data sampah.
Tabel 7.85 Kasus Uji Membuat Transaksi Penyetoran Alternatif 4
Nama Kasus Uji Membuat Transaksi Penyetoran 4 : Jika aktor
menghapus data sampah.
Prosedur 1. Aktor memilih data sampah yang akan dihapus.
2. Aktor mengklik tombol hapus.
Hasil yang diharapkan Sistem akan menghapus data yang dipilih.
Hasil Sistem menghapus data yang dipilih.
Status Valid

7.3 Pengujian Compatibility


Pengujian compatibility dilakukan dengan menjalankan sistem melalui 3
browser yang berbeda untuk melihat apakah sistem dapat berjalan dengan baik di
masing-masing browser. Pada Gambar 7.4 merupakan hasil pengujian
compatibility pada Chrome Browser. Pada Gambar 7.5 merupakan hasil pengujian
compatibility pada Opera Browser. Pada Gambar 7.6 merupakan hasil pengujian
compatibility pada Microsoft Edge Browser. Berdasarkan hasil dari ketiga kasus uji,
didapatkan hasil bahwa sistem dapat berjalan dengan baik pada masing-masing
browser.

101
Gambar 7.4 Pengujian Compatibility pada Chrome Browser

Gambar 7.5 Pengujian Compatibility pada Opera Browser

Gambar 7.6 Pengujian Compatibility pada Microsoft Edge Browser

102
7.4 Hasil Analisis Pengujian
Pada sub bab ini akan dibahas hasil analisis pengujian berdasarkan pada
dua pengujian yang dilakukan, yaitu pengujian unit dan pengujian validasi. Pada
pengujian unit dilakukan pengujian kepada 3 sampel uji, yaitu fungsi
insertPenarikan(), updateAkun(), dan bukuTabungan(). Pada fungsi
insertPenarikan() nilai cyclomatic complexity yang dihasilkan adalah 3, pada
fungsi updateAkun() nilai cyclomatic complexity yang dihasilkan adalah 4, dan
pada fungsi bukuTabungan() nilai cyclomatic complexity yang dihasilkan adalah
2. Berdasarkan hasil dari 3 sampel uji tersebut, didapatkan nilai rata-rata dari
cyclomatic complexity adalah 4 dan menunjukkan bahwa kompleksitas dari
program ini tergolong rendah. Pada hasil pengujian validasi yang dilakukan
kepada 32 kebutuhan yang ada, 100% menghasilkan status Valid dan tidak
ditemukan kesalahan pada sistem. Sedangkan pada hasil pengujian compability,
didapatkan sistem dapat berjalan dengan baik pada ketiga tipe browser yang
berbeda. Hal ini membuktikan bahwa Sistem Aplikasi Transaksi Bank Sampah
Online dapat digunakan oleh pengguna.

103
BAB 8 PENUTUP

Pada bab berikut ini akan dibahas kesimpulan yang diperoleh dari hasil
penelitian dan saran untuk penelitian selanjutnya.

8.1 Kesimpulan
Berdasarkan pada hasil dari tahapan-tahapan yang telah dilakukan pada
analisis kebutuhan, perancangan, implementasi, dan pengujian sistem, maka
kesimpulan yang dapat diperoleh adalah sebagai berikut :
1. Berdasarkan hasil pada tahapan analisis kebutuhan yang telah dilakukan,
diperoleh hasil berupa 32 kebutuhan fungsional dan 1 kebutuhan non
fungsional. Aktor yang terlibat dalam sistem ada 4 yaitu, pengunjung, admin,
driver, dan nasabah. Hasil dari analisis kebutuhan diperoleh berdasarkan dari
hasil studi literatur, wawancara, dan observasi.
2. Berdasarkan hasil pada tahapan perancangan yang telah disusun berdasarkan
hasil analisis kebutuhan, diperoleh hasil berupa perancangan sequence
diagram, class diagram, perancangan basis data, perancangan komponen,
dan perancangan antarmuka.
3. Berdasarkan hasil pada tahapan implementasi yang telah dilakukan, diperoleh
hasil sistem aplikasi transaksi bank sampah online yang memiliki fitur-fitur
utama seperti melihat buku tabungan, mengecek lokasi penjemputan,
membuat transaksi penarikan saldo, login, dan mengubah data akun. Sistem
dibangun dengan menggunakan bahasa pemrograman PHP yang diterapkan
pada framework codeigniter.
4. Berdasarkan hasil pada tahapan pengujian yang telah dilakukan, pengujian
terhadap sistem dilakukan dengan metode white box testing yang digunakan
pada pengujian unit dan black box testing pada pengujian validasi. Pengujian
unit dilakukan terhadap 3 fungsi yaitu, fungsi insertPenarikan(),
updateAkun(), dan bukuTabungan() menghasilkan nilai rata-rata pada
cyclomatic complexity sebesar 4, yang berarti sistem memiliki tingkat
kompleksitas yang baik. Pengujian validasi dilakukan terhadap 32 kebutuhan
fungsional. Kemudian dilakukan pengujian nonfungsional yaitu compatibility
testing yang diuji pada web browser Microsoft Edge, Chrome, dan Opera
Browser. Dari seluruh hasil pengujian yang dilakukan diperoleh hasil 100%
valid dan tidak ada kesalahan yang ditemukan.

8.2 Saran
Saran yang dapat diberikan untuk pengembangan sistem transaksi bank
sampah online selanjutnya adalah :
1. Menambahkan kebutuhan untuk dapat membuat laporan bulanan transaksi.
2. Menambahkan aktor baru seperti pimpinan direktur untuk memperoleh hasil
laporan transaksi.
3. Menambahkan kebutuhan untuk melakukan transaksi jual beli barang bekas
hasil olahan sampah yang di daur ulang.

104
DAFTAR PUSTAKA

Arief, M., 2011. Pemrograman Web Dinamis Menggunakan PHP dan MYSQL.
Yogyakarta: ANDI.
BSM, 2016. Mengenal bank sampah malang. [Online]
Available at: http://banksampahmalang.blogspot.co.id
[Diakses 24 April 2018].
Deacon, J., 2009. Model View Controller (MVC) Architecture. John deacon
computer Systems Development, Consulting & Training.. [Online]
Available at: http://www.jdl.co.uk, http://www.johndeacon.net
[Diakses 28 Maret 2018].
Dharwiyanti, S. & Wahono, R. S., 2003. Pengantar Unified Modeling Language
(UML).
Hakim, L., 2010. Membangun Web Berbasis PHP dengan Framework Codeigniter.
Dalam: Yogyakarta: Lokomedia.
Hendini, A., 2016. Pemodelan UML Sistem Informasi Monitoring Penjualan Dan
Stok Barang (Studi Kasus : Distro Zhezha Pontianak).
Khan, M., 2010. Different Forms of Software Testing Techniques for Finding Errors.
Int. journal of computer science issues. Vol. 7. pp. 11-16.
Kustiyahningsih, Y. & Anamisa, D. R., 2011. Pemograman Basis Data Berbasis Web
Menggunakan PHP & MySQL. Yogyakarta: Graha Ilmu.
Prasojo, L. D. & Riyanto, 2011. Teknologi informasi pendidikan. Dalam: Yogyakarta:
Gava Media, p. 152.
Pressman, R. S., 2010. Software Engineering : a practitioner’s approach. New York:
s.n.
Roger, S. & Pressman, 2012. Rekayasa Perangkat Lunak Pendekatan Praktisi (edisi
7). Yogyakarta: Andi Offset.
Rosa, A. & Shalahuddin, M., 2011. Modul Pembelajaran Rekayasa Perangkat Lunak
(Terstruktur dan Berorientasi Objek). Bandung: Modula.
Rouf, A., 2012. PENGUJIAN PERANGKAT LUNAK DENGAN MENGGUNAKAN
METODE WHITE BOX DAN BLACK BOX.
Sagita, R. A. & Hari, S., 2016. Penerapan Metode Waterfall pada sistem informasi
penjualan furniture berbasis web.
Shodiq, A., 2009. Tutorial Dasar Pemrograman Google Maps API. Tutorial Dasar
Pemrograman Google Maps API.
Sommerville, I., 2011. Software engineering 9th edition. s.l.:s.n.
Suehring, S., 2013. JavaScript Step By Step. s.l.:Microsoft Press.

105
Sukamto, R. A. & Shalahuddin, M., 2013. Rekayasa Perangkat Lunak. Bandung:
Informatika.
Tjahyadi, F. et al., 2007. IGOS Training Tool Kit "RDBMS (Relational Database
Management System): MySQL".
Turban, E., RE, P. & RK, R., 2003. Introduction to Information Systems, 2nd Edition.
USA: s.n.

106
LAMPIRAN A SURAT PERNYATAAN

107
LAMPIRAN B HASIL WAWANCARA

108
109

Anda mungkin juga menyukai