Anda di halaman 1dari 72

LAPORAN KINERJA AKHIR SEMESTER

MANAGER INFORMATIKA
STMIK DCI

REKAYASA PERANGKAT LUNAK (RPL)

FADHIL RAMADHAN
11210170

2023
PROGRAM STUDI TEKNIK/MANAJEMEN INFORMATIKA
JURUSAN TEKNIK/MANAJEMEN INFORMATIKA
STMIK DCI
FILOSOFI MATAKULIAH RPL

Rekayasa perangkat lunak sebagai penerapan suatu pendekatan yang


sistematis, disiplin dan terkuantifikasi atas pengembangan, penggunaan dan
pemeliharaan perangkat lunak, serta studi atas pendekatan-pendekatan ini, yaitu
penerapan pendekatan engineering atas perangkat lunak. Rekayasa perangkat lunak
adalah pengubahan perangkat lunak itu sendiri guna mengembangkan, memelihara,
dan membangun kembali dengan menggunakan prinsip reakayasa untuk
menghasilkan perangkat lunak yang dapat bekerja lebih efisien dan efektif untuk
pengguna.

Rekayasa Perangkat Lunak atau RPL adalah suatu perubahan perangkat lunak
yang berfungsi untuk melakuka pengembangan, pemeliharaan dan pembangunan kembali
dengan memakai prinsip rekayasa untuk memperoleh perangkat lunak yang bisa bekerja
lebih efisien dan efektif pada user.
MOTO – KESAN - SARAN

MOTO :
“Hiduplah menjadi seseorang yang bermanfaat itulah arti dari kehidupan ”

KESAN :
1. kesan dari matkul ini ialah matkul yang sebenar benarnya IT jadi kita harus bisa
dalam matkul RPL

SARAN :
1. Saran bagi diri saya sendiri, diharapkan kedepannya saya bisa lebih interaktif,
dapat lebih menyerap ilmu dengan baik, senantiasa bersemangat dan tidak
mengeluh.

2. Materi yang disampaikan sangat mendetail dan dapat diterima dengan baik.
Namun diharapkan untuk kedepannya disaat mengulang materi yang disampaikan
minggu lalu, materi yang diulang tidak terlau panjang sehingga tidak menyita
lebih banyak waktu, alangkah lebih baiknya waktu untuk penyampaian materi
baru lebih panjang dari waktu yang digunakan untuk mengulang materi.
KATA PENGANTAR

Kami senantiasa memanjatkan puji dan syukur ke hadirat Allah SWT yang
mengajarkan kepada manusia dari perantara pena. Ilmu-Nya meliputi apa yang ada di
bumi dan yang ada di langit dan yang ada diantaranya. Sholawat dan salam semoga
tercurah kepada junjungan dan teladan alam Nabi Muhammad SAW. Kami berharap
kelembutan dan keberkahan ilmu Allah SWT dilimpahkan kepada kami sehingga
memberikan mangaat dan memberikan petunjuk menuju jalan kebenaran yang diridhoi.
Dengan karunia-Nya pula, kami mengembangkan model laporan atau jawaban kinerja
manager agar dapat memberikan manfaat sesuai dengan harapan dan tujuan.
Sajian laporan dan jawaban merupakan resume eksekutif agar sistematis,
sederhana dan mudah dipahami dan dipelajari. Selanjutnya dapat dikembangkan kea rah
yang lebih baik.
Akhir kata, laporan ini dapat memberikan karakter yang baik. Kami menyadari
kinerja ini tentunya tidak sempurna dan ideal, banyak kekurangan sehingga memerlukan
kritik dan penyempurnaan yang berkesinambungan. Untuk itu kami sangat terbuka
dengan segala saran dan kritik pada buku ini agar menjadi lebih baik di masa menadatang
menyesuaikan jamanya. Harapan kami semoga karya ini dapat memberikan manfaat
sesuai dengan maksud dan tujuannya.

Tasikmalaya, 28 juni 2023

Fadhil Ramadhan

i
DAFTAR ISI

DAFTAR ISI............................................................................................................................................
BAB 1 RESUME KARYA PRODUK RPL DAN PENGANTAR ALAT BANTU (TOOLS)
PROSES PENYUSUNAN DOKUMEN RPL.........................................................................................
1.1 Rekapitulasi Resume Karya RPL Ide dan Produk Sendiri...............................................................................
BAB 2 KARYA PRODUK RPL PRIMITIF “APLIKASI SIMULASI GENERATOR DATA
ENTRI”.....................................................................................................................................................
2.1 SYSTEM ENGINEERING.............................................................................................................................
2.2 ANALISIS SOFTWARE.................................................................................................................................
2.3 DESAIN SOFTWARE....................................................................................................................................
2.4 CODING SOFTWARE...................................................................................................................................
2.5 TESTING SOFTWARE................................................................................................................................
2.6 MAINTENANCE SOFTWARE...................................................................................................................
BAB 3 KARYA PRODUK RPL VISUAL “SUBSISTEM APLIKASI KASIR PENJUALAN
BARANG”..............................................................................................................................................
3.1 SYSTEM ENGINEERING...........................................................................................................................
3.2 ANALISIS SOFTWARE...............................................................................................................................
3.3 DESAIN SOFTWARE..................................................................................................................................
3.4 CODING SOFTWARE.................................................................................................................................
3.5 TESTING SOFTWARE................................................................................................................................
3.6 MAINTENANCE SOFTWARE...................................................................................................................
BAB 4 KARYA PRODUK RPL BERBASIS WEB “SISTEM PENDAFTARAN ONLINE
BERBASIS WEB”..................................................................................................................................
4.1 SYSTEM ENGINEERING...........................................................................................................................
4.2 ANALISIS SOFTWARE...............................................................................................................................
4.3 DESAIN SOFTWARE..................................................................................................................................
4.4 CODING SOFTWARE.................................................................................................................................
4.5 TESTING SOFTWARE................................................................................................................................
4.6 MAINTENANCE SOFTWARE...................................................................................................................
BAB 5 KARYA PRODUK RPL BERBASIS MOBILE “WEB KASIR”.............................................
5.1 SYSTEM ENGINEERING...........................................................................................................................
5.2 ANALISIS SOFTWARE...............................................................................................................................
5.3 DESAIN SOFTWARE..................................................................................................................................
5.4 CODING SOFTWARE.................................................................................................................................
5.5 TESTING SOFTWARE................................................................................................................................
5.6 MAINTENANCE SOFTWARE...................................................................................................................
DAFTAR PUSTAKA.............................................................................................................................

ii
BAB 1
RESUME KARYA PRODUK RPL DAN PENGANTAR ALAT BANTU
(TOOLS) PROSES PENYUSUNAN DOKUMEN RPL

1.1 Rekapitulasi Resume Karya RPL Ide dan Produk Sendiri

JENIS Platform
N0 STATUS NAMA PRODUK
RPL Bahasa & DBMS
Bahasa : Turbo Pascal
Primitif 1 Produk “APLIKASI ATM”

Bahasa : Delphi
Visual 1 Produk Aplikasi Kasir Penjualan Barang
DBMS : Paradox
Bahasa : PHP
Web 1 Produk Aplikasi Pendaftaran Siswa baru
DBMS : My SQL
Pahasa : PHP/Java
Mobile 1 Ide Aplikasi Kasir
DBMS : MySQL

1
BAB 2
KARYA PRODUK RPL PRIMITIF
“APLIKASI SIMULASI GENERATOR DATA ENTRI”

2.1 SYSTEM ENGINEERING

Tahapan Resume Dokumen


Water Fall
SYSTEM System Aplikasi ATM
ENGINEERING
JUDUL & DEFINISI :

“Aplikasi Simulasi ATM adalah sebuah program aplikasi pembelajaran untuk


mendemokan cara transaksi cepat dan memudahkan baik secara manual maupun
otomatis pada suatu aplikasi sistem.

URAIAN :

Rekayasa perangkat lunak ATM dibuat untuk menumbuhkan kreasi simulasi untuk
memudahkan suatu transaksi melalui sebuah aplikasi system

Mengacu pada 6 elemen sistem berbasis komputer CBS, maka deskripsi kriteria sistem
yang terkait Aplikasi ATM meliputi:

 Hardware: Sistem ini menggunakan perangkat keras (hardware) yang diperlukan


berupa satu komputer “standar minimal”
 Software : Sistem ini dirancang untuk membuat perangkat lunak yang bersifat stand
alone untuk belajar dimanapun dan kapanpun mengunakan paltform bahasa
pemrograman “primitif” pascal.
 Database : Sistem ini bersifat “primitif” tidak menggunakan model RDBMS untuk data,
tetapi direpresentasikan menggunakan file teks sebagai kasus data eksternal.
 People : Sistem ini akan digunakan oleh mahasiswa untuk belajar dan dosen untuk
peragaan proses pembelajaran untuk matakuliah yang terkait pemrograman.
 Document : Sistem ini akan menggunakan dokumentasi sederhana yang diuraikan
dalam dokumen README.
 Procedure : Sistem ini tidak memerlukan prosedur kusus untuk perilaku bisnis,
prosedurnya hanya komunikasi dosen dengan mahasiswa sebagai pembelajaran
bebas.

2
2.2 ANALISIS SOFTWARE

Tahapan Resume Dokumen


Water Fall

ANALISIS 1). Kebutuhan Perangkat Lunak ( Software Requirement Specification) : SRS


SOFTWARE

ANALISIS 2). Diagram Prosedur (Flow Map)


SOFTWARE Diagram prosedur bukan merupakan aplikasi bisnis

Client Sistem Aplikasi

client

B.indonesia

Pilih bahasa
transaksi
Masukan pin

B.inggris
output

struk

3
2.3 DESAIN SOFTWARE

Tahapan Resume Dokumen


Water Fall
DESAIN
SOFTWARE 1). Desain Antarmuka Pemakai ( User Interface)

4
2.4 CODING SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE SOURCE CODE
program atm;
uses crt;
var
pin,transaksi,bahasa:integer;
tanya:string;
saldo,tarik:real;
label
pilih_transaksi,menu_lainnya,tariklg,pinnya,choose_transaction
,
starting,pull_again;
begin
saldo:=5000000;
pinnya:
clrscr;
write('Enter Pin = ');readln(pin);
if pin = 123 then
begin
clrscr;
writeln('1. Bahasa Indonesia');
writeln('2. English');
writeln('================');
write('Pilih Bahasa = ');readln(bahasa);
if bahasa = 1 then
begin
pilih_transaksi:
clrscr;
writeln('1. 200.000');
writeln('2. 300.000');
writeln('3. 500.000');
writeln('4. Transaksi Lain');
writeln('5. Keluar');
writeln('===============');
writeln;
write('Pilih Transaksi = ');readln(transaksi);
if transaksi = 1 then
begin
if saldo >= 200000 then
begin
writeln('Penarikan Tunai Sebesar Rp.200.000');
saldo := saldo-200000;
write('Cetak Struk ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin

5
Tahapan Resume Dokumen
Water Fall
writeln('Saldo Anda Rp.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Tekan Tombol Apa Saja');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Saldo Anda Tidak Cukup');
write('Transaksi Lagi (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pilih_transaksi;
end
else
begin
exit;
end;
end;
end
else if transaksi = 2 then
begin
if saldo >= 300000 then
begin
writeln('Penarikan Tunai Sebesar Rp.300.000');
saldo := saldo-300000;
write('Cetak Struk ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Saldo Anda Rp.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Tekan Tombol Apa Saja');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;

6
Tahapan Resume Dokumen
Water Fall
end
else
begin
writeln('Saldo Anda Tidak Cukup');
write('Transaksi Lagi ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pilih_transaksi;
end
else
begin
exit;
end;
end;
end
else if transaksi = 3 then
begin
if saldo >= 500000 then
begin
writeln('Penarikan Tunai Sebesar Rp.500.000');
saldo := saldo-500000;
write('Cetak Struk ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Saldo Anda Rp.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Tekan Tombol Apa Saja');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Saldo Anda Tidak Cukup');
write('Transaksi Lagi ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pilih_transaksi;
end
else

7
Tahapan Resume Dokumen
Water Fall
begin
exit;
end;
end;
end
else
begin
menu_lainnya:
clrscr;
writeln('1. Cek Saldo');
writeln('2. Penarikan');
writeln('3. Kembali');
writeln('===============');
writeln;
write('Pilih Transaksi = ');readln(transaksi);
if transaksi = 1 then
begin
writeln('Saldo Anda Rp.',saldo:0:0);
writeln;
writeln('Tekan Tombol Saja');
readkey;
goto menu_lainnya;
end
else if transaksi = 2 then
begin
tariklg:
clrscr;
write('Masukkan Jumlah Penarikan =
');readln(tarik);
if saldo >= tarik then
begin
writeln('Penarikan Tunai Sebesar
Rp.',tarik:0:0);
writeln;
writeln('Saldo Anda Rp.',saldo-tarik:0:0);
writeln('=========================');
saldo:= saldo - tarik;
writeln;
write('Penarikan Lagi ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto tariklg;
end
else
begin
goto menu_lainnya;
end;

8
Tahapan Resume Dokumen
Water Fall
end
else
begin
writeln('Saldo Anda Tidak Cukup');
write('Penarikan Lagi ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto tariklg;
end
else
begin
goto menu_lainnya;
end;
end;
end
else
begin
goto pilih_transaksi;
end;
end;
end
else
(*bagian english*)
begin
choose_transaction:
clrscr;
writeln('1. 200.000');
writeln('2. 300.000');
writeln('3. 500.000');
writeln('4. Others Transaction');
writeln('===================');
writeln;
write('Choose Transaction = ');readln(transaksi);
if transaksi = 1 then
begin
if saldo >= 200000 then
begin
writeln('Cash Withdrawal Of $.200.000');
saldo := saldo-200000;
write('Print Receipt ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Your Balance $.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Press Any Key');

9
Tahapan Resume Dokumen
Water Fall
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Your Balance Is Not Enough');
write('Transaction Again ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pilih_transaksi;
end
else
begin
exit;
end;
end;
end
else if transaksi = 2 then
begin
if saldo >= 300000 then
begin
writeln('Cash Withdrawal Of $.300.000');
saldo := saldo-300000;
write('Print Receipt ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Your Balance $.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Press Any Key');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Your Balance Is Not Enough');
write('Transaction Again ? (Y/N) =
10
Tahapan Resume Dokumen
Water Fall
');readln(tanya);
if tanya = 'Y' then
begin
goto choose_transaction;
end
else
begin
exit;
end;
end;
end
else if transaksi = 3 then
begin
if saldo >= 500000 then
begin
writeln('Cash Withdrawal Of $.500.000');
saldo := saldo-500000;
write('Print Receipt ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Your Balance $.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Press Any Key');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Your Balance Is Not Enough');
write('Transaction Again ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto choose_transaction;
end
else
begin
exit;
end;
end;
end

11
Tahapan Resume Dokumen
Water Fall
else
begin
starting:
clrscr;
writeln('1. Check Balance');
writeln('2. Cash Withdrawal');
writeln('3. Back');
writeln('===============');
writeln;
write('Choose Transaction = ');readln(transaksi);
if transaksi = 1 then
begin
writeln('Your Balance $.',saldo:0:0);
writeln;
writeln('Press Any Key');
readkey;
goto starting;
end
else if transaksi = 2 then
begin
pull_again:
clrscr;
write('Enter The Withdrawal Amount =
');readln(tarik);
if saldo >= tarik then
begin
writeln('Cash Withdrawal Of $.',tarik:0:0);
writeln;
writeln('Your Balance $.',saldo-tarik:0:0);
writeln('=========================');
saldo:= saldo - tarik;
writeln;
write('Cash Withdrawal Again ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pull_again;
end
else
begin
goto starting;
end;
end
else
begin
writeln('Your Balance Is Not Enough');
write('Cash Withdrawal Again ? (Y/N) =
');readln(tanya);

12
Tahapan Resume Dokumen
Water Fall
if tanya = 'Y' then
begin
goto pull_again;
end
else
begin
goto starting;
end;
end;
end
else
begin
goto choose_transaction;
end;
end;
end;

end
else
begin
write('Pin Salah');
end;
end.
384
ATM.PAS
@@ -0,0 +1,384 @@
program atm;
uses crt;
var
pin,transaksi,bahasa:integer;
tanya:string;
saldo,tarik:real;
label
pilih_transaksi,menu_lainnya,tariklg,pinnya,choose_transaction
,
starting,pull_again;
begin
saldo:=5000000;
pinnya:
clrscr;
write('Enter Pin = ');readln(pin);
if pin = 123 then
begin
clrscr;
writeln('1. Bahasa Indonesia');
writeln('2. English');
writeln('================');

13
Tahapan Resume Dokumen
Water Fall
write('Pilih Bahasa = ');readln(bahasa);
if bahasa = 1 then
begin
pilih_transaksi:
clrscr;
writeln('1. 200.000');
writeln('2. 300.000');
writeln('3. 500.000');
writeln('4. Transaksi Lain');
writeln('5. Keluar');
writeln('===============');
writeln;
write('Pilih Transaksi = ');readln(transaksi);
if transaksi = 1 then
begin
if saldo >= 200000 then
begin
writeln('Penarikan Tunai Sebesar Rp.200.000');
saldo := saldo-200000;
write('Cetak Struk ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Saldo Anda Rp.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Tekan Tombol Apa Saja');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Saldo Anda Tidak Cukup');
write('Transaksi Lagi (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pilih_transaksi;
end
else
begin
exit;
end;

14
Tahapan Resume Dokumen
Water Fall
end;
end
else if transaksi = 2 then
begin
if saldo >= 300000 then
begin
writeln('Penarikan Tunai Sebesar Rp.300.000');
saldo := saldo-300000;
write('Cetak Struk ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Saldo Anda Rp.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Tekan Tombol Apa Saja');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Saldo Anda Tidak Cukup');
write('Transaksi Lagi ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pilih_transaksi;
end
else
begin
exit;
end;
end;
end
else if transaksi = 3 then
begin
if saldo >= 500000 then
begin
writeln('Penarikan Tunai Sebesar Rp.500.000');
saldo := saldo-500000;
write('Cetak Struk ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then

15
Tahapan Resume Dokumen
Water Fall
begin
writeln('Saldo Anda Rp.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Tekan Tombol Apa Saja');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Saldo Anda Tidak Cukup');
write('Transaksi Lagi ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pilih_transaksi;
end
else
begin
exit;
end;
end;
end
else
begin
menu_lainnya:
clrscr;
writeln('1. Cek Saldo');
writeln('2. Penarikan');
writeln('3. Kembali');
writeln('===============');
writeln;
write('Pilih Transaksi = ');readln(transaksi);
if transaksi = 1 then
begin
writeln('Saldo Anda Rp.',saldo:0:0);
writeln;
writeln('Tekan Tombol Saja');
readkey;
goto menu_lainnya;
end
else if transaksi = 2 then
begin

16
Tahapan Resume Dokumen
Water Fall
tariklg:
clrscr;
write('Masukkan Jumlah Penarikan =
');readln(tarik);
if saldo >= tarik then
begin
writeln('Penarikan Tunai Sebesar
Rp.',tarik:0:0);
writeln;
writeln('Saldo Anda Rp.',saldo-tarik:0:0);
writeln('=========================');
saldo:= saldo - tarik;
writeln;
write('Penarikan Lagi ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto tariklg;
end
else
begin
goto menu_lainnya;
end;
end
else
begin
writeln('Saldo Anda Tidak Cukup');
write('Penarikan Lagi ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto tariklg;
end
else
begin
goto menu_lainnya;
end;
end;
end
else
begin
goto pilih_transaksi;
end;
end;
end
else
(*bagian english*)
begin

17
Tahapan Resume Dokumen
Water Fall
choose_transaction:
clrscr;
writeln('1. 200.000');
writeln('2. 300.000');
writeln('3. 500.000');
writeln('4. Others Transaction');
writeln('===================');
writeln;
write('Choose Transaction = ');readln(transaksi);
if transaksi = 1 then
begin
if saldo >= 200000 then
begin
writeln('Cash Withdrawal Of $.200.000');
saldo := saldo-200000;
write('Print Receipt ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Your Balance $.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Press Any Key');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Your Balance Is Not Enough');
write('Transaction Again ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pilih_transaksi;
end
else
begin
exit;
end;
end;
end
else if transaksi = 2 then
begin

18
Tahapan Resume Dokumen
Water Fall
if saldo >= 300000 then
begin
writeln('Cash Withdrawal Of $.300.000');
saldo := saldo-300000;
write('Print Receipt ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Your Balance $.',saldo:0:0);
writeln('=======================');
writeln;
writeln('Press Any Key');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Your Balance Is Not Enough');
write('Transaction Again ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto choose_transaction;
end
else
begin
exit;
end;
end;
end
else if transaksi = 3 then
begin
if saldo >= 500000 then
begin
writeln('Cash Withdrawal Of $.500.000');
saldo := saldo-500000;
write('Print Receipt ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
writeln('Your Balance $.',saldo:0:0);
writeln('=======================');
writeln;

19
Tahapan Resume Dokumen
Water Fall
writeln('Press Any Key');
readkey;
goto pinnya;
end
else
begin
goto pinnya;
end;
end
else
begin
writeln('Your Balance Is Not Enough');
write('Transaction Again ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto choose_transaction;
end
else
begin
exit;
end;
end;
end
else
begin
starting:
clrscr;
writeln('1. Check Balance');
writeln('2. Cash Withdrawal');
writeln('3. Back');
writeln('===============');
writeln;
write('Choose Transaction = ');readln(transaksi);
if transaksi = 1 then
begin
writeln('Your Balance $.',saldo:0:0);
writeln;
writeln('Press Any Key');
readkey;
goto starting;
end
else if transaksi = 2 then
begin
pull_again:
clrscr;
write('Enter The Withdrawal Amount =
');readln(tarik);

20
Tahapan Resume Dokumen
Water Fall
if saldo >= tarik then
begin
writeln('Cash Withdrawal Of $.',tarik:0:0);
writeln;
writeln('Your Balance $.',saldo-tarik:0:0);
writeln('=========================');
saldo:= saldo - tarik;
writeln;
write('Cash Withdrawal Again ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pull_again;
end
else
begin
goto starting;
end;
end
else
begin
writeln('Your Balance Is Not Enough');
write('Cash Withdrawal Again ? (Y/N) =
');readln(tanya);
if tanya = 'Y' then
begin
goto pull_again;
end
else
begin
goto starting;
end;
end;
end
else
begin
goto choose_transaction;
end;
end;
end;

end
else
begin
write('Pin Salah');
end.

21
22
2.5 TESTING SOFTWARE

Tahapan Resume Dokumen


Water Fall
TESTING 1). Testing / Pengujian
SOFTWARE A) Oleh User : UAT
B) Oleh Internal : Uji Alpha (untuk pemahaman)
C) Oleh Umum : Uji Beta ( untuk tambahan pengetahuan)

A). UAT ( User Acceptance Test ) : Pengujian penerimaan oleh User

Nama Pengujian : UAT


Metode Pengujian : Black Box
Deskripsi : Menguji fungsi-fungsi dan alur aplikasi dengan kebutuhan
Acc (Acceptance) : 1. Cukup
2. Kurang (perlu perbaikan)
3. Error
4. Tidak cukup

Kode Keterangan/fitur Acc Keterangan Pengujian Ttd dan Nama


Penguji
K01 Masukan Pin 1 - XXX Roihan
Pilih bahasa 1 XXX Ono
Menu transaksi 1 - XXX Gery
Transaksi lain 1 - YYY Ojo
Cek saldo 1 - XXX Roihan
penarikan 1 - XXX Roihan

23
2.6 MAINTENANCE SOFTWARE

Tahapan Resume Dokumen


Water Fall
MAINTENANCE 1). Petunjuk Instalasi
SOFTWARE 2). User manual (untuk latihan belajar)
3). Prosedur Trouble Shooting (untuk latihan belajar)
1) Petunjuk Instalsasi : README.TXT

IDE :
Program KREASI Simulasi Sederhana untuk mempelajari kasus Input-Proses-Output
dengan kreasi :
1) Input dalam 3 model :
Input Keyboard Manual, Input Generate Otomatis , Input Otomatis dari Fileteks
2) Proses menggunakan struktur data :
ARRAY & RECORD
3) Output dari 3 model input
4) Simulai simultan : Input-Proses-Output

Platform :
Program diimplementasikan dengan platform :
- Bahasa Pemrograman Primitif : Pascal
- Tools : Dosbox
- Sistem Operasi : Windows based

INSTALASI dan RUNNING PROGRAM:


untuk dapat menjalankan program ini diperlukan langkah-langkah instaslasi:
1. Instalasi terlebih Dosbox di komputer Anda
2. Copy program dalam satu folder tertentu
- misal buat foilder D:\DEMOS
- Copy Program ke foilder D:\DEMOS
- GENFILE.EXE
- U_ATM.TPU
- U_TEXT.TPU
- U_BASIC.TPU
3. Jalankan Program
- Jalankan Dosbox
- lakukan mounting direktori, misal
MOUNT X D:\DEMOS
- Pindah ke drive X --> path>X :
- Jalankan X> GENFILE
4. Selesai.

24
BAB 3
KARYA PRODUK RPL VISUAL
“SUBSISTEM APLIKASI KASIR PENJUALAN BARANG”

3.1 SYSTEM ENGINEERING

Tahapan Resume Dokumen


Water Fall
SYSTEM
ENGINEERING System Specification (SS)
JUDUL & DEFINISI :
“Subsistem Aplikasi Penjualan Barang” dinamakan HITBAR (Hitung Barang) adalah
aplikasi basis data yang berfungsi menangani proses transaksi pembelian barang dari
konsumen oleh kasir.
Untuk menyederhanakan kompleksitas data dan proses maka banyaknya atribut data dan
kompleksitas informasi tidak menjadi fokus utama.
URAIAN :
Rekayasa perangkat lunak SAPBAR dibuat untuk membuat produk aplikasi basis data
dengan pengolahan data dasar dalam pembelajaran basis data yang mencakup Kasus
keterkaian data master-detail dengan elemen proses : (1) penyimpanan data; (2)
Penghapusan data; (3) Pengeditan data; (4) Penampilan browse data; (5)Penampilan
laporan informasi; (6) mengenal alur prosedur; (7) Data collection.
Mengacu pada 6 elemen sistem berbasis komputer CBS, maka deskripsi kriteria sistem
yang terkait HITBAR meliputi:
 Hardware: Sistem ini menggunakan perangkat keras (hardware) yang diperlukan
berupa client-server
 Software : Sistem ini dirancang untuk membuat perangkat lunak yang bersifat client-
server tetapi bisa memenuhi stand alone untuk belajar.
 Database : Sistem ini menggunakan model RDBMS MySQL, MsAccess, atau Paradox
 People : Sistem ini akan digunakan oleh kasir untuk menanani transaksi pembelian
barang.
 Document : Sistem ini akan menggunakan dokumentasi sederhana yang diuraikan
dalam dokumen README.
 Procedure : Sistem ini memerlukan prosedur kusus untuk proses transaksi dalam
pembuatan nomor transaksi otomatis dan penghapusan transaksi

25
3.2 ANALISIS SOFTWARE

Tahapan Resume Dokumen


Water Fall

ANALISIS 1). Kebutuhan Perangkat Lunak ( Software Requirement Specification) : SRS


SOFTWARE

Unsur Kode Keterangan/fitur Keterangan/fitur


 Melakukan transaksi kasir dengan cepat dan
meminimalkan kesalahan entri.
Kasir K01 Entri Transaksi dengan mudah
 Kode barang menggunakan QR Code.
 Pencetakan struk pembelian
 Pelaporan Penjualan Harian, bulanan, tahunan
Manager M01 Pelaporan Transaksi  Pelaporan Kinerja Kasir
 Pelaporan N barang terlaris

Pengelolaan data Master dan  Penyiapan data master barang


Admin A01
Otorisasi  Pengaturan otoritas akses

CATATAN : Batasan
- Aplikasi ini hanya menggunakan kode manual untuk belajar saja
- Aplikasi ini hanya mencetak daftar transaksi saja

Tahapan Resume Dokumen


Water Fall

ANALISIS 2). Diagram Prosedur (Flow Map)


SOFTWARE Diagram prosedur yang disederhanakan

26
Tahapan Resume Dokumen
Water Fall

Konsumen Kasir Manager

Start

Transaksi
Barang & Dan
Uang Laporan
Pelaporan

Cetak Struk
End

Struk

Tahapan Resume Dokumen


Water Fall

ANALISIS DFD : Data Flow Diagram


SOFTWARE 3a). Context Diagram (CD ) : diagram konteks

Kode barang +
Jumlah barang 1). Data User ( Kasir)
Aplikasi 2). Data barang

Kasir HITBAR Admin


1). Laporan
2). kembalian

27
Tahapan Resume Dokumen
Water Fall

ANALISIS 5). PSPEC : Proccess Specification / spesifikasi proses


SOFTWARE Catatan : PSPEC hanya untuk level terbesar/terakhir setiap Proses

Berdasarkan DFD PSPEC melputi :


1. Proses 1 : Kelola Barang
2. Proses 2 : Kelola User
3. Proses 3 : Otorisasi
4. Proses 4 : Kelola Transaksi

1). Proses Kelola Barang 3). Proses Otorisasi


Input : X Data Barang Input : IdUser + Password
Output : Data Tersimpan ke TblBarang Output : Status
Proses : Entri(X) ; Edit (X); Proses : Cek otorisasi IdUser + Password
Delete(X); Search(X). If (OK) then
Status  Berhak
else
Status  Tidak Berhak
2). Proses Kelola User 4). Proses Kelola Transaksi
Input : X Data User Input : Kode_Barang + QTY
Output : Data Tersimpan ke TblUser Output : Data rekap tersimpan di TblMaster
Proses : Entri(X) ; Edit (X); Data rinci tersimpan di TblDetil
Delete(X); Search(X). Proses : Entri Transaksi; Delete Item Detil;
Delete Transaksi Master

3.3 DESAIN SOFTWARE

Tahapan Resume Dokumen


Water Fall
DESAIN
SOFTWARE 1). Desain Antarmuka Pemakai ( User Interface)

28
Tahapan Resume Dokumen
Water Fall

Tampilan awal

29
Tahapan Resume Dokumen
Water Fall
DESAIN 2). Desain Struktur Program & Modul
SOFTWARE

Project
HITBAR

Unit
Penjualan

Unit
Unit
Report
Barang

3.4 CODING SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE SOURCE CODE

unit KASIR;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
Panel1: TPanel;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Panel2: TPanel;

30
Tahapan Resume Dokumen
Water Fall
Button1: TButton;
Button2: TButton;
Button3: TButton;
Label6: TLabel;
Edit6: TEdit;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);


Var a,b:integer;
begin
a:= StrToInt(Edit2.Text);
b:= StrToInt (Edit3.Text);
Edit5.Text := IntToStr (a * b);
end;

procedure TForm1.Button2Click(Sender: TObject);


Var a,b:integer;
begin
a:= StrToInt(Edit4.Text);
b:= StrToInt (Edit5.Text);
Edit6.Text := IntToStr (a - b);
end;

procedure TForm1.Button3Click(Sender: TObject);


begin
edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
edit4.Text :='';
edit5.Text :='';
edit6.Text :='';
end;

end.

31
Tahapan Resume Dokumen
Water Fall

3.5 TESTING SOFTWARE

Tahapan Resume Dokumen


Water Fall
TESTING 1). Testing / Pengujian
SOFTWARE A) Oleh User : UAT
B) Oleh Internal : Uji Alpha (untuk pemahaman)
C) Oleh Umum : Uji Beta ( untuk tambahan pengetahuan)

A). UAT ( User Acceptance Test ) : Pengujian penerimaan oleh User

Nama Pengujian : UAT


Metode Pengujian : Black Box
Deskripsi : Menguji fungsi-fungsi dan alur aplikasi dengan kebutuhan
Acc (Acceptance) : 1. Cukup
2. Kurang (perlu perbaikan)
3. Error
4. Tidak cukup

Kode Keterangan/fitur Acc Keterangan Pengujian Ttd dan Nama


Penguji
K01 input barang 1 - XXX Roihan
Hitung Harga barang 1 TTT Roihan
Hitung Total harga 1 - XXX Mikal
Hitung Uang kembalian 1 - YYY Fatih

32
Tahapan Resume Dokumen
Water Fall

33
3.6 MAINTENANCE SOFTWARE

Tahapan Resume Dokumen


Water Fall
MAINTENANCE 1). Petunjuk Instalasi
SOFTWARE 2). User manual (untuk latihan belajar)
3). Prosedur Trouble Shooting (untuk latihan belajar)
1) Petunjuk Instalsasi : README.TXT

Program Aplikasi Database PENJUALAN ini


diimplementasikan dengan platform :
- DBMS : Paradox
- Sistem Operasi : Windows based
- Bahasa Pemrograman : Delphi

untuk dapat menjalankan program ini diperlukan


langkah-langkah instaslasi:

Instalasi :
1. Ubah terlebih dulu Regional Setting Formats :
(Date and Time Setting --> Change calender setting)
- Format : Indonesian (Indonesia)
- Date and time formats :
short date : dd/MM/yyyy
short time : HH:mm
Long time : HH:mm:ss

2. Instalasi terlebih dulu BDE (Borland Delphi Engine) di komputer Anda


- Copy terlebih dulu BDE
- Jalankan Setup.exe pada folder BDE sampai instalasi selesai

3. Copy satu set folder PENJUALAN (PROGRAM + DATABASE)


- misal buat foilder D:\DEMOS
- Copy PENJUALAN ke foilder D:\DEMOS

4. Sesuaikan setting folder database pada file DbConfig.txt


- misalkan folder point(2) D:\DEMOS\PENJUALAN\DATABASE

5. Buka Folder D:\DEMOS\PENJUALAN\PROGRAM


- Run :Penjulan.exe

Selesai.

34
BAB 4
KARYA PRODUK RPL BERBASIS WEB
“SISTEM PENDAFTARAN ONLINE BERBASIS WEB”

4.1 SYSTEM ENGINEERING

Tahapan Resume Dokumen


Water Fall
SYSTEM
ENGINEERING System Specification (SS)
JUDUL & DEFINISI :
“Sistem Pendaftaran siswa baru dengan aplikasi berbasis web dinamakan PENTOL adalah
aplikasi berbasis web, dengan Daftar calon siswa baru dengan system pendaftaran online
berbasis web.

URAIAN :
Rekayasa Perangkat Lunak “PENTOL” ini muncul berdasarkan bertujuan untuk
memudahkan pendaftaran secara online supaya lebih efesien tidak menggunakan kertas
dan pulpen melaikan dengan online.
Mengacu pada 6 elemen sistem berbasis komputer CBS, maka deskripsi kriteria sistem
yang terkait MEBETA meliputi:
 Hardware : Server yang digunakan sebagai hosting PENTOL
 Software : Aplikasi sistem informasi berbasis Web yang berfungsi untuk mengelola
siswa baru melalui html, CSS, PHP.
 People : oprator pentol memerlukan admintrator untuk memelihara sistem aplikasi
dan memelihara kesinambungan pengisian konten berita informasi.
 Database : Pengelolaan database menggunakan MYSQL /penyedia layananhosting
gratis seperti 000webhost.com
 Document : Sistem ini akan menggunakan dokumentasi sederhana yang diuraikan
dalam dokumen README.
 Prosedur : Prosedur sistem yang diperlukan adalah :
 Prosedur penugasan Admin : Admin Sistem, Admin pendaftaran
 Pengolah database
 Prosedur Pengoperasian Sistem
 Prosedur Penghentian Sistem

35
4.2 ANALISIS SOFTWARE

Tahapan Resume Dokumen


Water Fall

ANALISIS 1). Kebutuhan Perangkat Lunak ( Software Requirement Specification) :


SOFTWARE SRS

Fitur-Fitur Funsional Aplikasi

N
Kode Nama Keterangan
0
Pengelolaan Dapat melakukan pendataan dan otorisasi user admin sistem dan
1 F1
User user admin konten sesuai prosedur.
Pengeloaan
Dapat melakukan pengolahan data identitas siswa di seluruh
2 F2 Identitas
wilayah Tasikmalaya
siswa
Dapat melakukan pengolahan konten informasi berdasarkan
Penangan
3 F3 otoritas sekolah masing-masing untuk disajikan dalam informasi
Konten
PENTOL
Dapat menyediakan log akses terhasap user yang melakukan
4 F4 Keamanan
perubahan data.

Fitur Operasional

Grup Nama Kode Keterangan


 Save : penyimpanan data user dan kotrol validitas entri
Pendataan  Edit : penanganan editing data user
F1.01
User  Delete : penanganan penghapusan data user
F1
 Browse : penanganan sajian data user
Historis  Backup : penanganan backup data user
F1.02
User  Historis : penanganan dan pencetakan historis user admin
 Save : penyimpanan data identitas siswa baru
Pendataan
 Edit : penanganan editing data identitas siswa baru
F2.01 Identitas
 Delete : penanganan penghapusan data identitas siswa
F2 BEM
 Browse : penanganan sajian data identitas siswa
Pendataan  Default : penyimpanan default logo identitas siswa
F2.02
Logo  Edit : penanganan editing logoidentitas siswa
 Autolog : pengecekan log perubahan konten
F3 F3 01 Keamanan
 Report : penyajian log

36
Tahapan Resume Dokumen
Water Fall

ANALISIS DFD : Data Flow Diagram


SOFTWARE 3a). Context Diagram (CD ) : diagram konteks

Data Sistem
Admin
Admin
Sistem
PENTOL
Info Sistem SISTEM
PENTOL

4.3 DESAIN SOFTWARE

Tahapan Resume Dokumen


Water Fall
DESAIN 1). Desain Antarmuka Pemakai ( User Interface)
SOFTWARE Contoh ini hanya sebagian yang diperlihatkan

Tampilan Awal
untuk mengisi
folmulir

37

Masukan Data Siswa


Tahapan Resume Dokumen
Water Fall

38
Tahapan Resume Dokumen
Water Fall

Cetak data
pendaftaran

Database pendaftaran
siswa baru

39
Tahapan Resume Dokumen
Water Fall

Tahapan Resume Dokumen


Water Fall
DESAIN 2). Desain Struktur Program & Modul
SOFTWARE

4.4 CODING SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE SOURCE CODE

- Style.css
* {
margin: 0;
padding: 0;
font-family: 'Quicksand', sans-serif;
}
.box-formulir {
width: 50%;
margin: 100px auto;
}
.box {
background-color: #fff;
padding: 10px;

40
Tahapan Resume Dokumen
Water Fall
box-sizing: border-box;
margin: 5px 0 25px;
}
body {
background-color: #f8f8f8;
}
.table-form {
width: 100%;
}
.table-form tr td:nth-child(1){
width: 30%;
}
.input-control {
padding: 5px 10px;
font-size: 16px;
margin: 5px 0;
}
.btn-daftar {
padding: 12px 17px;
background-color: #4A99D7;
color: #fff;
border: none;
font-size: 15px;
}
.btn-daftar:hover {
cursor: pointer;
background-color: #4881AE;
}
.table-data {
width: 100%;
margin-top: 10px;
}
.table-data tr{
height: 34px;
}
.table-data tr td:nth-child(1){
width: 30%;
}
.main-login {
display: flex;
height: 100vh;
justify-content: center;
align-items: center;
}
.box-login {
width: 320px;
min-height: 200px;
}
.box-login h2 {
text-align: center;
margin-bottom: 15px;
}
.btn-login {

41
Tahapan Resume Dokumen
Water Fall
padding: 7px 15px;
background-color: #C70039;
color: #fff;
border: none;
border-radius: 7px;
font-size: 12px;
}
.btn-login:hover{
cursor: pointer;
background-color: #900C3F;
}
header {
background-color: #fff;
}
header::after{
content: "";
display: block;
clear: both;
}
header h1 {
padding: 15px 25px;
display: inline-block;
float: left;
}
header ul {
float: left;
}
header ul li {
padding: 24px 25px;
display: inline-block;

}
a {
text-decoration: none;
}
.content{
width: 90%;
padding: 10px;
margin: 50px auto;
}
.table {
width: 100%;
border-collapse: collapse;
border: 1px solid;
}
.table tr{
height: 30px;
}

- Index.php
<?php
session_start();
42
Tahapan Resume Dokumen
Water Fall
include('koneksi.php');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-
scale=1">
<title>Admin</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
<link href="https://fonts.googleapis.com/css2?
family=Quicksand:wght@500&display=swap" rel="stylesheet">
</head>
<body>
<header>
<h1>Admin Psb</h1>
<ul>
<li><a href="beranda.php">Beranda</li>
<li><a href="data-peserta.php">Data Peserta</li>
<li><a href="keluar.php">Keluar</li>
</ul>
</header>
<section class="content">
<h2>Beranda</h2>
<div class="box"></div>
<h3><?php echo $_SESSION['nama']?>, Selamat Datang di
Beranda</h3>
</section>
</body>
</html>

- Berhasil.php
<?php
include('koneksi.php');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-
scale=1">
<title>Psb Online</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
<link href="https://fonts.googleapis.com/css2?
family=Quicksand:wght@500&display=swap" rel="stylesheet">
</head>
<body>
<section class="box-formulir">
<h2>Pendaftaran Berhasil</h2>
<div class="box">
<h4>Kode Pendaftaran Anda Adalah <?php echo
$_GET['id']?></h4>
43
Tahapan Resume Dokumen
Water Fall
<br>
<h5><a href="cetak-bukti.php?id=<?php echo
$_GET['id']?>"class="btn-daftar">Cetak Bukti Daftar</a></h5>
</div>
</section>
</body>
</html>

- Cetak-bukti.php
<?php
include('koneksi.php');
$peserta = mysqli_query($conn, "SELECT * FROM tb_pendaftaran WHERE
id_pendaftaran ='".$_GET['id']."' ");
$p = mysqli_fetch_object($peserta);
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-
scale=1">
<title>Psb Online</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
<link href="https://fonts.googleapis.com/css2?
family=Quicksand:wght@500&display=swap" rel="stylesheet">
</head>
<body>
<h2>Bukti Pendaftaran</h2>
<table class="table-data">
<tr>
<td>Kode Pendaftaran</td>
<td>:</td>
<td><?php echo $p->id_pendaftaran ?></td>
</tr>
<tr>
<td>Nama Peserta</td>
<td>:</td>
<td><?php echo $p->nm_peserta ?></td>
</tr>
<tr>
<td>Tempat Lahir</td>
<td>:</td>
<td><?php echo $p->tmp_lahir ?></td>
</tr>
<tr>
<td>Tanggal Lahir</td>
<td>:</td>
<td><?php echo $p->tgl_lahir ?></td>
</tr>
<tr>
<td>Jenis Kelamin</td>
<td>:</td>
44
Tahapan Resume Dokumen
Water Fall
<td><?php echo $p->jk ?></td>
</tr>
<tr>
<td>Agama</td>
<td>:</td>
<td><?php echo $p->agama ?></td>
</tr>
<tr>
<td>Alamat</td>
<td>:</td>
<td><?php echo $p->almt_peserta ?></td>
</tr>
</table>
</body>
</html>

- Data-peserta.php
<?php
session_start();
include('koneksi.php');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-
scale=1">
<title>Admin</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
<link href="https://fonts.googleapis.com/css2?
family=Quicksand:wght@500&display=swap" rel="stylesheet">
</head>
<body>
<header>
<h1>Admin Psb</h1>
<ul>
<li><a href="beranda.php">Beranda</li>
<li><a href="data-peserta.php">Data Peserta</li>
<li><a href="keluar.php">Keluar</li>
</ul>
</header>
<section class="content">
<h2>Data Peserta</h2>
<div class=""></div><br>
<table class="table" border="1">
<thead>
<tr>
<th>No</th>
<th>Id Pendaftaran</th>
<th>Nama</th>
<th>Jenis Kelamin</th>
</tr>
45
Tahapan Resume Dokumen
Water Fall
</thead>
</table>
<tbody>
<?php
$no = 1;
$list_peserta = mysqli_query($conn, "SELECT * FROM
tb_pendaftaran");
while ($row = mysqli_fetch_array($list_peserta)) {
?>
<tr>
<td><?php echo $no++?></td>
<td><?php echo $row['id_pendaftaran']?></td>
<td><?php echo $row['nm_peserta']?></td>
<td><?php echo $row['jk']?></td>
</tr>
<?php }?>
</tbody>
</section>
</body>
</html>

- Koneksi.php
<?php
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'db_psb';

$conn = mysqli_connect($host, $user, $pass, $db);

if(!$conn){
echo 'Error : '.mysqli_connect_error($conn);
}
?>

4.5 TESTING SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE SOURCE CODE

A). UAT ( User Acceptance Test ) : Pengujian penerimaan oleh User

46
Tahapan Resume Dokumen
Water Fall
Nama Pengujian : UAT
Metode Pengujian : Black Box
Deskripsi : Menguji fungsi-fungsi dan alur aplikasi dengan kebutuhan
Acc (Acceptance) : 1. Cukup
2. Kurang (perlu perbaikan)
3. Error
4. Tidak cukup

Kode Keterangan/fitur Acc Keterangan Pengujian Ttd dan Nama


Penguji
K01 input Data Siswa 1 - XXX Roihan
Cetak Pendaftaran 1 TTT Roihan
Data pendaftaran 1 - XXX Mikal

4.6 MAINTENANCE SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE SOURCE CODE

1) Petunjuk Instalsasi : Pendaftaran siswa baru

IDE :
Program KREASI Simulasi Sederhana untuk mempelajari kasus Input-Proses-Output
dengan kreasi :
1) Input dalam 3 model :
Input Keyboard Manual, Input Generate Otomatis , Input Otomatis dari Fileteks
2) Proses menggunakan struktur data :
Char, varchar, date, text
3) Output dari 3 model input
4) Simulai simultan : Input-Proses-Output

Platform :
Program diimplementasikan dengan platform :
- Bahasa Pemrograman : Html, css, php
- Tools : sublimtext
- Sistem Operasi : Windows based

INSTALASI dan RUNNING PROGRAM:


untuk dapat menjalankan program ini diperlukan langkah-langkah instaslasi:
47
Tahapan Resume Dokumen
Water Fall
1. Instalasi terlebih sublimtext/vcodekomputer Anda
2. download xampp sebagai localhost

BAB 5
KARYA PRODUK RPL BERBASIS MOBILE
“WEB KASIR”

5.1 SYSTEM ENGINEERING

Tahapan Resume Dokumen


Water Fall
SYSTEM
ENGINEERING System Specification (SS)
JUDUL & DEFINISI :
“Aplikasi Web Kasir” dinamakan AWEKA adalah aplikasi berbasis mobile, dengan
menyajikan amin kasir dapat dipelajari secara praktis dan bersifat mobile untuk
memudahkan bertansaksi.
URAIAN :
Rekayasa Perangkat Lunak “AWEKA” ini muncul berdasarkan kebutuhan kemudahan,
kepraktisan, dan biaya yang murah/ gratis sehingga dapat di akses dengan mudah dan
praktis untuk bertransaksi
Mengacu pada 6 elemen sistem berbasis komputer aweka, maka deskripsi kriteria sistem
yang terkait MEBETA meliputi:
 Hardware : Server yang digunakan sebagai hosting AWEKA
 Software : Aplikasi sistem informasi berbasis Web MOBILE yang berfungsi untuk
mengelola kasir melalui html, CSS, PHP.

48
Tahapan Resume Dokumen
Water Fall
 People : oprator pentol memerlukan admintrator untuk memelihara sistem aplikasi
dan memelihara kesinambungan pengisian konten berita informasi.
 Database : Pengelolaan database menggunakan MYSQL /penyedia layananhosting
gratis seperti 000webhost.com
 Document : Sistem ini akan menggunakan dokumentasi sederhana yang diuraikan
dalam dokumen README

49
5.2 ANALISIS SOFTWARE

Tahapan Resume Dokumen


Water Fall

ANALISIS 1). Kebutuhan Perangkat Lunak ( Software Requirement Specification) : SRS


SOFTWARE

Fitur Aplikasi Keterangan


Jumlah total Teks alquran yang mudah dibaca, dengan pilihan (Rasm
Indopak, Utsmani)
Pengembalian Perpindahan surah yang mudah dengan menggeser layar
uang
Cetak struk Mendengarkan audio murattal dengan banyak pilihan qori
Data pembelian Bookmark ayat-ayat Al-quran tanpa dibatasi

50
5.3 DESAIN SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE DESAIN struktur PROSES/MENU

Tahapan Resume Dokumen


51
Tahapan Resume Dokumen
Water Fall
Water Fall

5.4 CODING SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE SOURCE CODE

<?php

$koneksi = mysqli_connect('localhost', 'root', '',


'kasir_zibran');

// summon admin
// koneksi

function summon_admin()
{
global $koneksi;
$id = $_SESSION['idkaskit'];
return mysqli_query($koneksi, "SELECT * FROM tb_user
WHERE id ='$id'");
}

// -------------------------------------USER
SECTION--------------------------------------------------
------------------
// select user by admin
function select_user()
{
global $koneksi;
if (isset($_POST['go'])) {
$cari = $_POST['cari'];
return mysqli_query($koneksi, "SELECT * FROM
tb_user WHERE nama LIKE '%".$cari."%'");
}else{
return mysqli_query($koneksi, "SELECT * FROM

52
Tahapan Resume Dokumen
Water Fall
tb_user");
}

function select_user_2()
{
global $koneksi;
$query = mysqli_query($koneksi, "SELECT count(id)
AS jadmin FROM tb_user ORDER BY id DESC");
$key = mysqli_fetch_array($query);
echo $key['jadmin'];
}

// Insert user

function insert_user()
{
global $koneksi;
$username = $_POST['username'];
$password = md5($_POST['password']);
$nama = $_POST['nama'];
$level = $_POST['level'];
$foto = $_FILES['foto']['name'];

// cek username
$cek = mysqli_query($koneksi, "SELECT * FROM tb_user
WHERE username ='$username'");
$row = mysqli_fetch_row($cek);

if ($row) {
echo "username '%".$username."%' sudah ada";
}else if($foto != ""){

$allowed_ext = array('png','jpg');
$x = explode(".", $foto);
$ekstensi = strtolower(end($x));
$file_tmp = $_FILES['foto']['tmp_name'];
$angka_acak = rand(1,999);
$nama_file_baru = $angka_acak.'-'.$foto;
if (in_array($ekstensi, $allowed_ext)

53
Tahapan Resume Dokumen
Water Fall
=== true) {
move_uploaded_file($file_tmp, 'img/'.
$nama_file_baru);
$result = mysqli_query($koneksi,
"INSERT INTO tb_user SET username='$username',
password='$password', nama='$nama', level='$level',
foto='$nama_file_baru'");

}else if($foto==""){
return mysqli_query($koneksi, "INSERT INTO
tb_user SET username='$username', password='$password',
nama='$nama', level='$level'");
}
}

// delete user

function delete_user()
{
global $koneksi;
$id = $_POST['id'];
$cekimg = mysqli_query($koneksi, "SELECT * FROM
tb_user WHERE id='$id'");
$row = mysqli_fetch_array($cekimg);

// hapus gambar
$foto = $row['foto'];
unlink("img/$foto");
return mysqli_query($koneksi, "DELETE FROM tb_user
WHERE id='$id'");
}

// update user
function update_user()
{

global $koneksi;

54
Tahapan Resume Dokumen
Water Fall
$id = $_POST['id'];
$username = $_POST['username'];
$password = md5($_POST['password']);
$nama = $_POST['nama'];
$level = $_POST['level'];
$foto = $_FILES['foto']['name'];

// unlink
$unlink = mysqli_query($koneksi, "SELECT * FROM
tb_user WHERE id='$id'");
$row = mysqli_fetch_array($unlink);

$hapus_foto = $row['foto'];

// update

if(isset($_POST['ubahfoto']))
{
if ($row['foto']=="")
{
if ($foto != "") {
$allowed_ext = array('png','jpg');
$x = explode(".", $foto);
$ekstensi = strtolower(end($x));
$file_tmp = $_FILES['foto']
['tmp_name'];
$angka_acak = rand(1,999);
$nama_file_baru = $angka_acak.'-'.
$foto;
if (in_array($ekstensi,
$allowed_ext) === true) {

move_uploaded_file($file_tmp, 'img/'.
$nama_file_baru);
$result =
mysqli_query($koneksi, "UPDATE tb_user SET
username='$username', password='$password', nama='$nama',
level='$level', foto='$nama_file_baru' WHERE id='$id'");

55
Tahapan Resume Dokumen
Water Fall
}

}
}else if ($row['foto']!="") {
if ($foto != "") {
$allowed_ext = array('png','jpg');
$x = explode(".", $foto);
$ekstensi = strtolower(end($x));
$file_tmp = $_FILES['foto']
['tmp_name'];
$angka_acak = rand(1,999);
$nama_file_baru = $angka_acak.'-'.
$foto;
if (in_array($ekstensi,
$allowed_ext) === true) {

move_uploaded_file($file_tmp, 'img/'.
$nama_file_baru);
$result =
mysqli_query($koneksi, "UPDATE tb_user SET
username='$username', password='$password', nama='$nama',
level='$level', foto='$nama_file_baru' WHERE id='$id'");
if ($result) {

unlink("img/$hapus_foto");
}

}
}
}

if (empty($_POST['foto'])) {
return mysqli_query($koneksi, "UPDATE tb_user
SET username='$username', password='$password',
nama='$nama', level='$level' WHERE id='$id'");

56
Tahapan Resume Dokumen
Water Fall
}

// ---------------------------------------------------RAK
SECTION---------------------------------\\

function insert_rak()
{
global $koneksi;
$kdrak = $_POST['kdrak'];
$namarak = $_POST['namarak'];
return mysqli_query($koneksi, "INSERT INTO tb_rak
SET kdrak='$kdrak', namarak='$namarak'");
}

function delete_rak()
{
global $koneksi;
$id = $_POST['id'];
return mysqli_query($koneksi, "DELETE FROM tb_rak
WHERE id='$id'");

function update_rak()
{
global $koneksi;
$id = $_POST['id'];
$kdrak = $_POST['kdrak'];
$namarak = $_POST['namarak'];
return mysqli_query($koneksi, "UPDATE tb_rak SET
kdrak='$kdrak', namarak='$namarak' WHERE id='$id'");
}

// ----------------------------------------------SUPPLIER
SECTION--------------------------------------------------
-------------\\

function insert_supplier()
{

57
Tahapan Resume Dokumen
Water Fall
global $koneksi;
$kdspl = $_POST['kdspl'];
$namaspl = $_POST['namaspl'];
$alamatspl = $_POST['alamatspl'];
$kontakspl = $_POST['kontakspl'];
return mysqli_query($koneksi, "INSERT INTO
tb_supplier SET kdspl='$kdspl', namaspl='$namaspl',
alamatspl='$alamatspl', kontakspl='$kontakspl'");
}

function hapus_supplier()
{
global $koneksi;
$id = $_POST['id'];
return mysqli_query($koneksi, "DELETE FROM
tb_supplier WHERE id='$id'");
}

function update_supplier()
{
global $koneksi;
$id = $_POST['id'];
$kdspl = $_POST['kdspl'];
$namaspl = $_POST['namaspl'];
$alamatspl = $_POST['alamatspl'];
$kontakspl = $_POST['kontakspl'];
return mysqli_query($koneksi, "UPDATE tb_supplier
SET kdspl='$kdspl', namaspl='$namaspl',
alamatspl='$alamatspl', kontakspl='$kontakspl' WHERE
id='$id'");
}

//
---------------------------------------------------------
---PRODUK
SECTION--------------------------------------------------
--\\

function insert_produk()
{
global $koneksi;
$kdproduk = $_POST['kdproduk'];

58
Tahapan Resume Dokumen
Water Fall
$nm_produk = $_POST['nm_produk'];
$kategori = $_POST['kategori'];
$stok = $_POST['stok'];
$rak = $_POST['rak'];
$supplier = $_POST['supplier'];
$harga = $_POST['harga'];

return mysqli_query($koneksi, "INSERT INTO tb_produk


SET kdproduk='$kdproduk', nm_produk='$nm_produk',
kategori='$kategori', stok='$stok', rak='$rak',
supplier='$supplier', harga='$harga'");

function delete_produk()
{
global $koneksi;
$id = $_POST['id'];
return mysqli_query($koneksi, "DELETE FROM tb_produk
WHERE id='$id'");
}

function update_produk()
{
global $koneksi;
$id = $_POST['id'];
$kdproduk = $_POST['kdproduk'];
$nm_produk = $_POST['nm_produk'];
$kategori = $_POST['kategori'];
$stok = $_POST['stok'];
$rak = $_POST['rak'];
$supplier = $_POST['supplier'];
$harga = $_POST['harga'];

return mysqli_query($koneksi, "UPDATE tb_produk SET


kdproduk='$kdproduk', nm_produk='$nm_produk',
kategori='$kategori', stok='$stok', rak='$rak',
supplier='$supplier', harga='$harga'");
}

function select_produk()

59
Tahapan Resume Dokumen
Water Fall
{
global $koneksi;
$query = mysqli_query($koneksi, "SELECT count(id) AS
jproduk FROM tb_produk");
$row = mysqli_fetch_array($query);
echo $row['jproduk'];
}

// ------------------------------------------------
KATEGORI
SECTION--------------------------------------------------
-------------\\\

function insert_kategori()
{
global $koneksi;
$kategori = $_POST['kategori'];
return mysqli_query($koneksi, "INSERT INTO tb_kat
SET kategori='$kategori'");
}

function hapus_kategori()
{
global $koneksi;
$id = $_POST['id'];
return mysqli_query($koneksi, "DELETE FROM tb_kat
WHERE id='$id'");
}

function update_kategori()
{
global $koneksi;
$id = $_POST['id'];
$kategori = $_POST['kategori'];

return mysqli_query($koneksi, "UPDATE tb_kat SET


kategori='$kategori' WHERE id='$id'");
}

// ---------------------------------------------------
PRODUK MASUK
SECTION--------------------------------------------------
60
Tahapan Resume Dokumen
Water Fall
--------\\

function produk_masuk()
{
global $koneksi;
$noinv = $_POST['noinv'];
$tanggal = $_POST['tanggal'];
$jam = $_POST['jam'];
$kdproduk = $_POST['kdproduk'];
$nm_produk = $_POST['nm_produk'];
$kategori = $_POST['kategori'];
$rak = $_POST['rak'];
$supplier = $_POST['supplier'];
$stok = $_POST['stok'];
$jml_masuk = $_POST['jml_masuk'];
$admin = $_POST['admin'];

// Tambah Stok Tabel Produk

$tambah_stok = $jml_masuk + $stok;

$query = mysqli_query($koneksi, "UPDATE tb_produk


SET stok='$tambah_stok' WHERE kdproduk='$kdproduk'");

$query_insert = mysqli_query($koneksi, "INSERT INTO


tb_prod_masuk SET noinv='$noinv', tanggal='$tanggal',
jam='$jam', kdproduk='$kdproduk', nm_produk='$nm_produk',
kategori='$kategori', rak='$rak', supplier='$supplier',
stok='$stok', jml_masuk='$jml_masuk', admin='$admin'");

if ($query_insert) {
echo '<script>window.history.back()</script>';
}

// -----------------------------------------CALL
TRANSACTION----------------------------------------------
---------------------------\\
function jumlah_saldo()
{

61
Tahapan Resume Dokumen
Water Fall
global $koneksi;
$jumlah = mysqli_query($koneksi, "SELECT sum(total)
as jtotal from laporan_penjualan");
$row = mysqli_fetch_array($jumlah);
echo rupiah($row['jtotal']);
}
function jumlah_terjual()
{
global $koneksi;
$jumlah = mysqli_query($koneksi, "SELECT
sum(jumlah_beli) as jbeli from laporan_penjualan");
$row = mysqli_fetch_array($jumlah);
echo $row['jbeli'];

// ---------------------------------------------lOGISTIK
SECTON---------------------------------------------------
--------------\\
function delete_pro_masuk()
{
global $koneksi;
$id = $_POST['id'];
return mysqli_query($koneksi, "DELETE FROM
tb_prod_masuk WHERE id='$id'");
}

// Hapus laporan
function hapus_laporan()
{
global $koneksi;
return mysqli_query($koneksi, "DELETE FROM
laporan_penjualan");
}
// url
function url()
{
return $url = "//localhost/web-kasir/vendors/";
}

function rupiah($angka){
$hasil = "Rp. ". number_format($angka,2,',','.');

62
Tahapan Resume Dokumen
Water Fall
return $hasil;
}

?>

5.5 TESTING SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE SOURCE CODE

A). UAT ( User Acceptance Test ) : Pengujian penerimaan oleh User

Nama Pengujian : UAT


Metode Pengujian : Black Box
Deskripsi : Menguji fungsi-fungsi dan alur aplikasi dengan kebutuhan
Acc (Acceptance) : 1. Cukup
2. Kurang (perlu perbaikan)
3. Error
4. Tidak cukup

Kode Keterangan/fitur Acc Keterangan Pengujian Ttd dan Nama


Penguji
K01 Total kembalian 1 - XXX rifki
Cetak struk 1 TTT zidan
Data pembelian 1 - XXX sabil

63
5.6 MAINTENANCE SOFTWARE

Tahapan Resume Dokumen


Water Fall
CODING
SOFTWARE SOURCE CODE

1) Petunjuk Instalsasi : Pendaftaran siswa baru

IDE :
Program KREASI Simulasi Sederhana untuk mempelajari kasus Input-Proses-Output
dengan kreasi :
1) Input dalam 3 model :
Input Keyboard Manual, Input Generate Otomatis , Input Otomatis dari Fileteks
2) Proses menggunakan struktur data :
Char, varchar, date, text
3) Output dari 3 model input
4) Simulai simultan : Input-Proses-Output

Platform :
Program diimplementasikan dengan platform :
- Bahasa Pemrograman : Html, css, php
- Tools : sublimtext
- Sistem Operasi : Windows based

64
Tahapan Resume Dokumen
Water Fall
INSTALASI dan RUNNING PROGRAM:
untuk dapat menjalankan program ini diperlukan langkah-langkah instaslasi:
1. Instalasi terlebih sublimtext/vcodekomputer Anda
2. download xampp sebagai localhost

65
BIODATA

NAMA : FADHIL RAMADHAN


TEMPAT LAHIR : BANDUNG
TANGGAL LAHIR : 10 DESEMBER 2001
JENIS KELAMIN : LAKI-LAKI
AGAMA : ISLAM
GOLONGAN DARAH : O
STATUS : BELUM MENIKAH
KEWARGANEGARAAN : INDONESIA
ALAMAT TERAKHIR : LENGGORSARI RT 27/14 , KEC.SINDANGKASIH, CIAMIS
PEKERJAAN KINI : FREELANCE DAN MAHASISWA

RIWAYAT PENDIDIKAN
No Tahun Lulus Keterangan
SMK BINA PUTERA NUSANTARA
1. 2020
TEKNIK TRANSMISI TELEKOMUNIKASI

2. 2017 SMPN 1 CIKONENG

3. 2014 SDN 1 GUNUNGCUPU

RIWAYAT PEKERJAAN
No Tahun Keterangan
1. Teknisi Dismantle di PT Telkom Tasikmalaya
2021

66
2. Teknisi pemasangan wifi indihome di PT Telkom Ciamis
2020

67

Anda mungkin juga menyukai