21
BAB III
PEMBAHASAN
3.1 Tinjauan Perusahaan
Dalam kegiatan rutin PT Bina Bangun Wibawa Mukti terdapat aturan yang ditentukan, dalam hal ini struktur organisasi yang menggambarkan garis perintah dan penerimaan perintah serta fungsi-fungsi pelaksanaan tersebut sehingga semua menjadi lancar. Penulis akan menguraikan sejarah berdirinya PT Bina Bangun Wibawa Mukti dan struktur organisasinya.
3.1.1 Sejarah Perusahaan
PT Bina Bangun Wibawa Mukti (Persero) didirikan pada tanggal 30 Desember 2002 dengan SIUP No. 503.09/2-257/DPMPTSP/PM-01/III/2018 oleh Bapak Prananto Sukodjatmoko (Direktur Utama) kepemilikan saham sebesar 95% oleh Pemerintah Kabupaten Bekasi dan 5% oleh Perusahaan Daerah Air Minum (PDAM) Kabupaten Bekasi. PT Bina Bangun Wibawa Mukti telah mengembangkan usaha kilang pengolahan gas dikecamatan Babelan, Kabupaten Bekasi.
PT Bina Bangun Wibawa Mukti (Persero) memiliki peluang yang sangat besar untuk maju karena besarnya potensi pembangunan di Kabupaten Bekasi itu sendiri, kuatnya dukungan dari para pemegang saham, serta profesionalisme, pengalaman dan dedikasi yang tinggi dari seluruh staf dan manajemennya. PT Bina Bangun Wibawa Mukti memiliki Visi Misi sebagai berikut:
Visi
Menjadi perusahaan termuka di bidang energi, sumber daya alam, dan infrakstruktur yang di unggulkan oleh masyarakat dan Pemerintah Kabupaten Bekasi.
22
Misi
Berperan serta secara aktif dan profesional dalam pengelolaan dan pemanfaatan sumber daya yang ada khususnya di Kabupaten Bekasi terutama di bidang energi, minyak dan gas bumi, infrakstruktur, perdagangan dan jasa untuk meningkatkan pertumbuhan ekonomi dan Pendapatan Asli Daerah (PAD) Kabupaten Bekasi.
3.1.2 Struktur Organisasi dan Fungsi
Sumber: PT Bina Bangun Wibawa Mukti (2019)
Gambar III. 1
Struktur Organisasi PT Bina Bangun Wibawa Mukti
Uraian Tugas PT Bina Bangun Wibawa Mukti
1. Manajer Kilang LPG
a. Tugas dan Kewenangan :
1) Mengendalikan operasi Kilang LPG meliputi kondisi operasi, kondisi peralatan operasi, kualitas dan kuantitas produk
Nurhasan
Ahmad Rifai Maskanul Abidin Surono T. Nugraha
Staf Penyimpanan Staf Pengadaan
Reza Al Jabar Benny S. Pandapotan
Staf Perencanaan & Evaluasi Bahrul Budiman Manager Kilang LPG
Wegig Ardianto
Penyimpanan Syaiful Imam
23
2) Memastikan keselamatan dan keamanan serta lingkungan kerja 3) Mengendalikan perencanaan kebutuhan material proses dan operasi 4) Mengendalikan biaya operasi
5) Berkoordinasi dengan mitra kerjasama perusahaan dalam aktivitas penyaluran gas dari titik penyerahan yang telah disepakati bersama 6) Menyampaikan berita acara pemakaian gas
7) Menandatangani Jadwal Kerja Shift, Laporan bulanan dan laporan operasi
8) Melaksanakan tugas kedinasan lain yang diberikan oleh Direksi
9) Berwenang melakukan pembinaan dan meningkatkan ketrampilan pekerja di Kilang LPG
10) Berwenang untuk memerintahkan bawahannya kerja lembur, memberikan penilaian kinerja, dan memberikan teguran kepada bawahannya
b. Manajer Kilang LPG membawahi: 1) Supervisor Produksi
2) Supervisor Pemeliharaan dan Perawatan 3) Supervisor Perencanaan dan Evaluasi 4) Supervisor Logistic
c. Manajer Kilang LPG bertanggung jawab dan melapor pekerjaannya kepada Direksi
2. Supervisor Logistic
a. Tugas dan Kewenangan:
1) Koordinasi dengan bagian lain (produksi, Pemeliharaan&Perawatan, dan Perencanaan) untuk menginventory kebutuhan sparepart fast
24
moving dan consumable untuk kegiatan pemeliharaan peralatan
Kilang LPG.
2) Mengawasi, menjaga, dan memastikan sparepart peralatan operasi dan pemeliharaan agar tetap tersedia.
3) Bertanggungjawab menentukan jumlah inventory sesuai kebutuhan 4) Melaporkan dan berkoordinasi sehubungan dengan sparepart yang
stock nya telah habis dan yang masih tersedia di gudang.
5) Mengawasi dan membuat laporan bulanan terkait tata ketersediaan
sparepart di gudang.
6) Bertanggungjawab dalam menyiapkan pengajuan pengadaan barang/jasa di plant.
7) Bertanggungjawab melakukan pekerjaan pembelian.
8) Bertanggungjawab mnemonitor status material requisition (MR), kontrak, dan order.
9) Melakukan tugas kedinasan lain yang diperintahkan atasannya.
10) Berwenang untuk memerintahkan bawahannya kerja lembur dan menegur bawahannya.
b. Supervisor Logistic membawahi Staf gudang dan Staf Pengadaan.
c. Supervisor Logistic bertanggung jawab dan melapor pekerjaannya kepada Manager Kilang.
3. Supervisor Perencanaan dan Evaluasi
a. Tugas dan Kewenangan:
1) Bertanggung jawab untuk melakukan perencanaan yang berkaitan dengan peningkatan proses produksi
25
2) Melakukan analisis secara teknis dan ekonomi untuk menentukan kelayakan suatu penambahan alat produksi, fasilitas pendukung, dan lainnya, dan memonitor jalannya suatu proyek pengembangan di dalam Kilang LPG
3) Melakukan perencanaan dan penyusunan anggaran untuk tahun berjalan
4) Memonitor dan mengawasi pelaksanaan pekerjaan pengembangan/ekspansi Kilang LPG, termasuk didalamnya pekerjaan pembangunan atau perluasan fasilitas penunjang (kantor, mess, fasilitas olahraga, dan lainnya)
5) Melakukan dan mengkoordinir pelaksanaan re-sertifikasi dan uji tera ulang alat ukur dan katup pengaman
6) Menjaga dan memelihara data kalibrasi peralatan proses, data-data manufaktur dan informasi teknis lainnya
7) Memeriksa gambar dari vendor, dan spesifikasi peralatan, supaya sesuai dengan standard yang di adopsi
8) Menyiapkan proposal proyek untuk modifikasi atau ekspansi di dalam Kilang LPG
9) Mengevaluasi perencanaan dari segi teknis dan keekonomian berdasarkan kualitas dan kuantitas sesuai kaidah keteknikan
10) Melakukan tugas kedinasan lain yang diperintahkan atasannya
11) Berwenang untuk memerintahkan bawahannya kerja lembur dan menegur bawahannya.
b. Supervisor Perencanaan dan Evaluasi membawahi Staf Perencanaan dan Evaluasi.
26
c. Supervisor Perencanaan dan Evaluasi bertanggung jawab dan melapor pekerjaannya kepada Manager Kilang.
4. Staf Penyimpanan
a. Bertanggung jawab atas ketersediaan dan stok barang gudang b. Mengkoordinir perintah muat (DOI) dan Surat Jalan
c. Menangani proses retur
d. Bertanggung jawab penuh dalam mengontrol barang masuk dan keluar e. Dapat membuat perhitungan dan pencatatan laporan stok barang gudang
baik secara manual maupun menggunakan program komputer (Microsoft
Excel) harian maupun bulanan dalam waktu yang telah ditentukan (mutasi
barang)
f. Melakukan audit stok gudang harian dan bulanan (Stock Opname) g. Melakukan stok opname
5. Staf Pengadaan
a. Penyusunan petunjuk teknis dan rencana umum pengadaan barang b. Pengendalian dan evaluasi kebijakan dalam proses pengadaan barang c. Penyelenggaraan administrasi layanan pengadaan barang
6. Staf Perencanaan dan Evaluasi
a. Menentukan dan menunjuk vendor termasuk sparepart yang sesuai dengan spek pekerjaan
b. Menjaga ketersediaan stok part, termasuk spek yang sesuai c. Supporting ke all tim
27
3.2 Tinjauan Kasus
3.2.1 Proses Bisnis Sistem Berjalan
Proses sistem berjalan menjelaskan tentang prosedur-prosedur kerja pada sistem yang sedang berjalan di PT Bina Bangun Wibawa Mukti. Hasil dari kegiatan ini adalah gambaran nyata dari urutan kegiatan yang dilakukan unit-unit organisasi khususnya kegiatan yang berhubungan dengan mengolah data.
Prosedur-prosedur sistem informasi pengelolaan data persediaan barang pada bagian gudang PT Bina Bangun Wibawa Mukti adalah sebagai berikut:
Proses dimulai dari bagian gudang melakukan pengecekan secara berkala untuk mencatat jumlah stok barang sekali pakai (consumable part). Jika jumlah stok dibawah minimum maka bagian gudang membuat daftar stok barang yang kurang dari jumlah minimun untuk di serahkan ke bagian pembelian. Bagian pembelian menerima daftar stok barang yang kurang dari minimum dan mulai membuat order pembelian barang sekali pakai (consumable part) untuk diserahkan ke supplier. Setelah data barang yang di pesan di Supplier tersedia kemudian Supplier mengirimkan barang beserta surat jalan ke bagian gudang dan bagian gudang melakukan pengecekan barang sekali pakai (consumable part) berdasarkan surat jalan dari Supplier, jika tidak ada kerusakan maka surat jalan akan di terima dan bagian gudang membuat laporan barang masuk untuk di serahkan ke Manager , jika ada kerusakan atau kekurangan maka surat jalan akan dikembalikan ke Supplier.
28
3.2.2 Activity Diagram Sistem Berjalan
Gudang Pembelian Supplier Manager
Mengecek persediaan barang sekali pakai
Membuat daftar stok kurang dari jumlah minimum
Memberikan daftar stok kurang dari jumlah minimum
Menerima daftar stok kurang dari jumlah minimum
Membuat order pembelian
Memberikan order pembelian
Menerima order pembelian
Membuat surat jalan
Menyerahkan barang beserta surat jalan
Menerima barang beserta surat jalan Membuat laporan barang masuk Mengembalikan Surat jalan
Menerima surat jalan
Menerima laporan barang masuk
Ya Tidak
Gambar III.2
Diagram Activity Sistem Berjalan pada PT Bina Bangun Wibawa Mukti
29
3.2.3 Dokumen Masukan
Nama Dokumen : Surat jalan
Fungsi : Dokumen pengiriman barang dan surat untuk mencocokan barang yang diterima
Sumber : Supplier
Tujuan : Bagian Gudang Media : Kertas
Frekuensi : Setiap terjadi transaksi pembelian Format : Lihat Lampiran A-1
3.2.4 Dokumen Keluaran
Nama Dokumen : Daftar stok barang
Fungsi : Sebagai data barang yang kurang dari jumlah minimum Sumber : Gudang
Tujuan : Bagian Pembelian Media : Kertas
Frekuensi : Setiap terjadi pengurangan barang Format : Lihat Lampiran B-1
Nama Dokumen : Laporan Barang Masuk
Fungsi : Sebagai laporan barang masuk Sumber : Bagian Gudang
Tujuan : Manager Media : Kertas
30
Frekuensi : Setiap terjadi masuknya barang Format : Lihat Lampiran B-2
Nama Dokumen : Order Pembelian
Fungsi : Sebagai data untuk pemesanan barang Sumber : Bagian Pembelian
Tujuan : Supplier Media : Kertas
Frekuensi : Setiap terjadi pemesanan barang Format : Lihat Lampiran B-3
3.2.5 Permasalahan Pokok
Setelah mempelajari dan memahami hasil riset yang di lakukan pada proses persediaan barang sekali pakai, penulis memperoleh kendala yang dialami oleh PT Bina Bangun Wibawa Mukti adalah:
1. Kelambatan penyajian informasi tentang jumlah stok barang yang tersedia di gudang.
2. Kelambatan penyajian informasi tentang transaksi-transaksi keluar masuk barang sekali pakai.
3. Sering terjadi kesalahan atau ketidaksesuaian dalam pencatatan maupun perhitungan.
31
3.2.6 Pemecahan Masalah
Berdasarkan permasalahan yang disebut di atas, maka perusahaan ini memerlukan sebuah sistem informasi persediaan barang terkomputerisasi yang dapat mengontrol transaksi-transaksi perusahaan tersebut. Sistem informasi persediaan barang terkomputerisasi ini harus dapat digunakan secara multiuser serta mendukung kegiatan pelaporan untuk seluruh transaksi sehingga mengurangi keterlambatan penyajian informasi transaksi yang dilakukan oleh perusahaan.
3.3 Analisis Kebutuhan Software
Analisa kebutuhan Software untuk persediaan barang sekali pakai
(consumable part) pada PT Bina Bangun Wibawa Mukti diusulkan dengan beberapa
prosedur.
3.3.1 Analisis Kebutuhan
A. Halaman Admin:
A1. Admin dapat melakukan Login.
A2. Admin dapat mengelola master barang. A3. Admin dapat mengelola master supplier. A4. Admin dapat mengelola master karyawan. A5. Admin dapat mengelola master bagian.
A5. Admin dapat mengelola transaksi barang keluar. A6. Admin dapat mengelola transaksi barang masuk. A7. Admin dapat mengelola data report barang keluar. A8. Admin dapat mengelola data report barang masuk. B. Halaman Pembelian:
B1. Pembelian dapat melakukan login. B2. Order
32
C. Halaman Bagian:
C1. Bagian dapat melakukan login. C2. Bagian dapat melihat master barang. C3. Bagian dapat mengelola barang keluar. D. Halaman Manager:
D1. Manager dapat melakukan login. D2. Manager dapat melihat menu report.
3.3.2 Use Case Diagram
Diagram usecase digunakan untuk mendeskripsikan apa yang seharusnya
dilakukan oleh sistem. Diagram usecase menyediakan cara mendiskripsikan pandangan eksternal terhadap sistem dan interaksi-interaksinya terhadap dunia luar. Dengan cara ini diagram usecase menggantikan diagram konteks pada pendekatan konvensional.
33
1. Use case diagram Halaman Admin
Gambar III.3
Use Case Diagram Halaman Admin
Tabel III.1
Descripsi Use Case Halaman Admin Use Case Narative Halaman Admin
Tujuan Admin dapat melakukan login,
mengelola menu master, mengelola transaksi barang keluar, mengelola barang masuk dan dapat mengelola report barang keluar dan masuk.
Deskripsi Sistem ini memungkinkan aktor
untuk mengelola sistem
persediaan mulai dari input data sampai dengan pembuatan
Login
Logout
Master barang Master supplier
Master bagian
Transaksi barang keluar Transaksi barang masuk Report barang keluar
Report barang masuk Admin
Melihat list barang Menambah data barang baru
Edit data barang
Hapus data barang Melihat list supplier
Menambah data supplier baru
Edit data supplier
Hapus data supplier
Menambah id bagianr Menyimban data bagian Melihat list bagian Menambah barang masuk Menambah barang keluar Export excel Export excel Validasi
Memeriksa status login Master karyawan Menambah data karyawan Menyimban data bagian Melihat list karyawan Edit data bagian Hapus data bagian Edit data karyawan Edit data bagian
34
laporan.
Skenario Utama
Aktor Admin
Kondisi awal Aktor membuka aplikasi
persediaan barang.
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol menu login
Sistem akan menampilkan nik dan
password.
2. Aktor mengelola menu master Sistem akan menampilkan master barang, master supplier, dan master user.
3. Aktor mengelola transaksi barang keluar
Sistem akan menampilkan form barang keluar.
4. Aktor mengelola transaksi barang masuk
Sistem akan menampilkan form barang masuk.
5. Aktor mengelola report barang keluar
Sistem akan menampilkan report barang keluar.
6. Aktor mengelola report barang masuk
Sistem akan menampilkan report barang masuk.
Kondisi Akhir Jika perintah sesuai maka sistem
akan manampilkan seperti yang diinginkan oleh Aktor
2. Use CaseDiagram Halaman Pembelian
Login Logout Order Pembelian Tambah baru Validasi
35
Gambar III.4
Use Case Diagram Halaman Pembelian
Tabel III.2
Descripsi Use Case Halaman Pembelian Use Case Narative Halaman Pembelian
Tujuan Bagian pembelian dapat
melakukan login, mengelola data order.
Deskripsi Sistem ini memungkinkan aktor
untuk mengelola sistem mulai dari
input transaksi sampai dengan
order.
Skenario Utama
Aktor Bagian pembelian
Kondisi awal Aktor membuka aplikasi
persediaan barang.
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol menu login Sistem akan menampilkan nik dan
password.
2. Aktor memilih order Sistem akan menampilkan data form order.
Kondisi Akhir Jika perintah sesuai maka sistem
akan manampilkan seperti yang diinginkan oleh Aktor
36
3. Use CaseDiagram Halaman Bagian
Gambar III.5
Use Case Diagram Halaman Bagian
Tabel III.3
Descripsi Use Case Halaman Bagian Use Case Narative Halaman Bagian
Tujuan Bagian melakukan login dan
mengedit data bagian dan menghapus data bagian.
Deskripsi Sistem ini memungkinkan aktor
untuk mengelola sistem mulai dari
input transaksi sampai dengan
menambah data bagian.
Skenario Utama
Aktor Bagian
Kondisi awal Aktor membuka aplikasi
persediaan barang.
Login
Logout
Master barang
Transaksi barang keluar Bagian
Melihat list barang Menambah data barang baru
Edit data barang
Hapus data barang
Menambah barang keluar Validasi
37
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol menu login Sistem akan menampilkan nik dan
password.
2. Aktor memilih pengajuan barang Sistem akan menampilkan form data bagian.
Kondisi Akhir Jika perintah sesuai maka sistem
akan manampilkan seperti yang diinginkan oleh Aktor.
4. Use CaseDiagram Halaman Manager
Gambar III.6
Use Case Diagram Halaman Manager
Login
Logout
Report barang keluar
Report barang masuk
Print laporan Print laporan
Validasi
Memeriksa status login Manager
38
Tabel III.4
Descripsi Use Case Halaman Manager Use Case Narative Halaman Manager
Tujuan Manager dapat melakukan login
dan report laporan.
Deskripsi Sistem ini memungkinkan aktor
untuk mengexport laporan
Skenario Utama
Aktor Manager
Kondisi awal Aktor membuka aplikasi
persediaan barang.
Aksi Aktor Reaksi Sistem
1. Aktor memilih tombol menu login Sistem akan menampilkan nik dan
password.
2. Aktor memilih report Sistem akan menampilkan report barang keluar dan masuk.
Kondisi Akhir Jika perintah sesuai maka sistem
akan manampilkan seperti yang diinginkan oleh Aktor
39
3.3.3 Activity Diagram
1. Activity Diagram Mengelola Login
Gambar III.7
Activity Diagram Mengelola Login
Admin Sistem
Melakukan login Menampilkan form login
Masukan nik dan password
Mengecek nik dan passsword
Salah
Login gagal
Menampilkan menu utama Benar
40
2. Activity Diagram Mengelola Master Barang
Gambar III.8
Activity Diagram Mengelola Master Barang
Admin Sistem
Memilih menu master Menampilkan menu master
Memilih menu master barang Menampilkan form
master barang
Input data barang baru
List barang
Save
Menampilkan list barang
41
3. Activity Diagram Mengelola Master Supplier
Gambar III.9
Activity Diagram Mengelola Master Supplier
Admin Sistem
Memilih menu master Menampilkan menu master
Memilih menu master supplier Menampilkan form
master supplier
Input data supplier baru
List supplier
Save
Menampilkan list supplier
42
4. Activity Diagram Mengelola Master Karyawan
Gambar III.10
Activity Diagram Mengelola Master Karyawan
Admin Sistem
Memilih menu master Menampilkan menu master
Memilih menu master karyawan Menampilkan form
master karyawan
Input kayawan baru
List karyawan
Save
Menampilkan list karyawan
43
5. Activity Diagram Mengelola Master Bagian
Gambar III.11
Activity Diagram Mengelola Master Bagian
Admin Sistem
Memilih menu master Menampilkan menu master
Memilih menu master bagian Menampilkan form
master bagian
Input data bagian baru
List bagian
Save
Menampilkan list bagian
44
6. Activity Diagram Mengelola Transaksi Barang keluar
Gambar III.12
Activity Diagram Mengelola Transaksi Barang keluar
Admin Sistem
Memilih menu transaksi Menampilkan menu transaksi
Memilih menu transaksi barang keluar
Menampilkan form barang keluar
Menginput barang keluar
Tambah ke daftar
Tampil pesan this is a required field Data kurang
lengkap
Lengkap
45
7. Activity Diagram Mengelola Transaksi Barang Masuk
Gambar III.13
Activity Diagram Mengelola Barang Masuk
Admin Sistem
Memilih menu transaksi Menampilkan menu transaksi
Memilih menu transaksi barang masuk
Menampilkan form barang masuk
Menginput barang masuk
46
8. Activity Diagram Mengelola Report Barang keluar
Gambar III.14
Activity Diagram Mengelola Report Barang Keluar
Admin Sistem
Memilih menu report Menampilkan menu report
Memilih report barang keluar
Menampilkan form laporan barang keluar
Menginput laporan barang keluar
Memilih laporan yang Ingin dicetak
47
9. Activity Diagram Mengelola Report Barang Masuk
Gambar III.15
Activity Diagram Mengelola Report Barang Masuk
Admin Sistem
Memilih menu report Menampilkan menu report
Memilih report barang masuk
Menampilkan form laporan barang masuk
Menginput laporan barang masuk
Memilih laporan yang Ingin dicetak
48
3.4 Desain
3.4.1 Entity Relationship Diagram (ERD)
Gambar III.16
Entity Relationship Diagram (ERD)
memiliki user nik nama password memiliki Nama_barang Master barang Id_barang memiliki alamat bagian Master karyawan nik Nama_kry No_tpln Id_barang alamat Master supplier Id_sup memiliki Nama_bagian Master bagian Id_bagian qty Id_transaksi No_tlpn nama kontak email Nama-sup memilik Transaaksi header qty tanggal Id_barang Id_transaksi terdapat Transaksi detail
49
3.4.2 Logical Record Structure (LRS)
Gambar III.17
Logical Record Structure (LRS)
3.4.3 Spesifikasi File
Spesifikasi File Tabel User
Nama File : user_login Akronim : user_login Tipe File : file Master Akses File : random Panjang Record : 66 Byte Kunci Field : nik
50
Tabel III.5
Spesifikasi File Tabel User
No. Elemen Data Nama Field Tipe Size Keterangan
1. Nik Nik char 6 Primary Key
2. Nama Nama varchar 50
3. Password Password varchar 10
4. Level Level int 2
Spesifikasi File Tabel Master Barang
Nama File : master barang Akronim : mst_barang
Tipe File : file master
Akses File : random Panjang Record : 67 Byte Kunci Field : id_barang
Tabel III.6
Spesifikasi File Tabel Master Barang
No. Elemen Data Nama Field Tipe Size Keterangan
1. Id barang id_barang Char 6 Primary Key 2. Nama barang nama_barang varchar 50
3. Qty Qty Int 11
Spesifikasi File Tabel Master Supplier
Nama File : Tabel master supplier Akronim : mst_supplier
51
Akses File : random Panjang Record : 241 Byte Kunci Field : id_sup
Tabel III.7
Spesifikasi File Tabel Master Supplier
No. Elemen Data Nama Field Tipe Size Keterangan
1. Id Supplier id_sup Char 6 Primary Key
2. Nama
Supplier
nama_sup Varchar 50
3. Alamat Alamat Varchar 70
4. No_tlpn no_tlpn Varchar 15
5. Kontak Kontak Varchar 50
6. Email Email Varchar 50
Spesifikasi File Tabel Barang Masuk
Nama File : barang_masuk Akronim : barang_masuk Tipe File : file master Akses File : random Panjang Record : 90 Byte Kunci Field : id_rec
Tabel III.8
Spesifikasi File Tabel Barang Masuk
No. Elemen Data Nama Field Tipe Size Keterangan
1. Id_rec id_rec Char 10 Primary Key
52
3. Tanggal Tanggal Varchar 7
4. Qty Qty Int 11
5. Id_sup id_sup Char 6
6 Create_user create_user Varchar 50
Spesifikasi File Tabel Transaksi Detail
Nama File : transaksi_detail Akronim : transaksi_detail Tipe File : file master Akses File : random Panjang Record : 27 Byte Kunci Field : id_transaksi
Tabel III.9
Spesifikasi File Tabel Transaksi Detail
No. Elemen Data Nama Field Tipe Size Keterangan
1. Id_transaksi id_transaksi Varchar 10 Primary Key 2. Id_barang id_barang Char 6
3. Qty Qty Int 11
Spesifikasi File Tabel Transaksi Header
Nama File : transaksi_header Akronim : transaksi_header Tipe File : file master Akses File : random Panjang Record : 53 Byte Kunci Field : id_transaksi
53
Tabel III.10
Spesifikasi File Tabel Transaksi Header
No. Elemen Data Nama Field Tipe Size Keterangan
1. Id_transaksi id_transaksi Varchar 10 Primary Key 2. Id_barang id_barang Char 6
3. Tanggal Tanggal Varchar 7
4. Nama Nama Varchar 30
3.4.4 Sequence Diagram
a. Sequance Diagram Login
Gambar III.18
Gambar Sequence Diagram Login
: Admin
1 : Isi NIK dan Password()
2 : NIK Password()
3 : Data Admin()
4 : validasi Admin()
5 : Username Password salah
6 : Pesan LoginGagal 7 : Menampilkan Menu Utama()
8 : Menampilkan Menu Utama 9 : Menampilkan Menu Utama
10 : Menu Utama Tampil
54
b. Sqeeuence Diagram Mater Barang
Gambar III.19
Sequence Diagram Master Barang
c. Sequence Diagram Report Barang Keluar
Gambar III.20
Sequence Diagram Report Barang Keluar :Admin
1 : Input Data Barang
2 : Data Barang Ditambah()
3 : Tambah Data Barang()
4 : Tambah Data()
6 : Data Barang Berhasil Ditambah
5 : Data Tersimpan
7 : Tampil Pesan Data Berhasil Disimpan F.Master Barang Kontrol Master Barang Master Barang : Manajer
1 : Memilih Report Barang Keluar ()
2 :Tampil Report Barang Keluar ()
3 : Pilih Tanggal Report()
4 :Tanggal Report()
5 : Menampilkan Report 6 : Menampilkan Report Barang Keluar Barang Keluar
7 : Report Barang Keluar Tampil
F. Report Kontrol Report Barang Keluar
Report Barang Keluar
55
3.4.5 Deployment Diagram
Gambar III.21
Gambar Deployment Diagram
3.4.6 User Interface
A. Tampilan Login
Gambar III.22 Gambar Tampilan Login
Main <<Active X Control>> PHP <<device>> <<Aplication>> persediaan_barang <<device>> Database <<DBMS>>My SQL <<Database>> inout
56
B.Tampilan Halaman Admin
Gambar III.23
Gambar Tampilan Halaman Admin
C.Tampilan Master Barang
Gambar III.24
57
D. Tampilan Master Supplier
Gambar III.25
Gambar Tampilan Master Supplier
E. Tampilan Master Karyawan
Gambar III.26
58
F. Tampilan Master Bagian
Gambar III.27
Gambar Tampilan Master Bagian
G.Tampilan Display Barang
Gambar III.28
59
H. Tampilan Display Supplier
Gambar III.29
Gambar Tampilan Display Supplier
I. Tampilan Display Karyawan
Gambar III.30
60
J. Tampilan Display Bagian
Gambar III.31
Gambar Tampilan Display Bagian
K. Tampilan Transaksi Barang Keluar
Gambar III.32
61
L.Tampilan Transaksi Barang Masuk
Gambar III.33
Gambar Tampilan Transaksi Barang Masuk
M.Tampilan Report Barang Keluar
Gambar III.34
62
N.Tampilan Excel Report Barang Keluar
Gambar III.35
Gambar Tampilan Excel Report Barang Keluar
O. Tampilan Report Barang Masuk
Gambar III.36
63
P. Tampilan Excel Report Barang Masuk
Gambar III.37
Gambar Tampilan Excel Report Barang Masuk
Q.Tampilan User Login
Gambar III.38
64
R.Tampilan List User Login
Gambar III.39
Gambar Tampilan List User Login
3.5 Implementasi 3.5.1 Code Generation 1 Form Login <?php include "conn.php"; session_start(); if(isset($_POST['btnlogin'])){
$sqllog = "SELECT * FROM user_login where nik = '".$_POST['txtnik']."' and password = '".$_POST['txtpass']."' ";
$qrylog = mysqli_query($conn, $sqllog); $log = mysqli_fetch_array($qrylog); $cek = mysqli_num_rows($qrylog);
65 //print $sqllog; if($cek == 1){ $_SESSION['nik'] = $log['nik']; $_SESSION['nama'] = $log['nama']; $_SESSION['level'] = $log['level']; header("location:dash.php"); //echo "<script>alert('SUKSESS');history.go(-1);</script>"; } else{
echo "<script>alert('Login GAGAL');history.go(-1);</script>"; } } ?> <!DOCTYPE html> <html> <head> <title>Login</title> <meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="code/css/bootstrap.min.css" /> <link rel="stylesheet" href="code/css/tema.css" />
66
<script type="text/javascript" src="code/js/bootstrap.min.js" ></script> <script type="text/javascript" src="jquery-3.3.1.min.js"></script>
</head> <body>
<div class="container" > <div class="row" >
<div class="col-xs-2 col-sm-4" ></div> <div class="col-xs-8 col-sm-4" >
<form name="Rutefrm" id="Rutefrm" method="POST" action="" style="margin-top: 80px" >
<img align="center" src="gbr/BBWM.png" width="250px">
<div class="form-group" >
<input type="text" class="form-control input-xs" name="txtnik" id="txtnik" placeholder="NIK" autocomplete="off">
</div>
<div class="form-group" >
<input type="Password" class="form-control input-xs" name="txtpass" id="txtpass" placeholder="PASSWORD" autocomplete="off">
67
</div>
<div class="form-group" >
<input type="submit" class="btn btn-lg btn-primary btn-block" name="btnlogin" id="btnlogin" value="LOGIN"> </div> </form> </div> </div> </div> </body> </html>
2 Form Master Barang <?php include "conn.php"; session_start(); if($_SESSION['nama'] == ""){ header("location:login.php"); die; }
68
include "navbar.php"; if(isset($quoy)=="") {
$quox = "B";
//$sqlcodequo = "SELECT COUNT(*) FROM Trs_DOSales Where PK_DONo LIKE '".$quox."%'";
$sqlcodequo = "select substr(id_barang,2,5) from mst_barang WHERE id_barang LIKE '".$quox."%' order by id_barang desc";
//$sqlcodequo = "select PK_OrdNo from Trs_Order WHERE PK_OrdNo LIKE '" .$quox. "%' order by PK_OrdNo desc";
$stmtquo = mysqli_query( $conn, $sqlcodequo ); //print $sqlcodequo; @$x = mysqli_fetch_array($stmtquo); $x[0]= $x[0] + 1; //$x++; if ($x[0] <= 9){ $xx = "0000".$x[0]; } else if ($x[0] <= 99){ $xx = "000".$x[0]; }
69 else if ($x[0] <= 999){ $xx = "00".$x[0]; } else if ($x[0] <= 9999){ $xx = "0".$x[0]; } else if ($x[0] <= 99999){ $xx = $x[0]; } //$datei = date('y-m-d'); //$quoy = "GMI.DO.".date('ym').".".$xx; $quoy = $quox.$xx; } if(@$_POST['input'] != ""){
$sqltb = "insert into mst_barang values ('".$quoy."', '".$_POST['txtbarang']."', '".$_POST['txtstock']."')";
$qrytb = mysqli_query($conn, $sqltb); if($qrytb == true){
echo "<script>alert('Data berhasil disimpan..');history.go(-1);</script>"; }
else{
echo "<script>alert('GAGAL !!');history.go(-1);</script>"; }
70 ?> <!DOCTYPE html> <html> <head> <title>Master Barang</title> <meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="code/css/bootstrap.min.css" /> <link rel="stylesheet" href="code/css/tema.css" />
<script type="text/javascript" src="code/js/bootstrap.min.js" ></script> <script type="text/javascript" src="jquery-3.3.1.min.js"></script> </head>
<body>
<div class="panel panel-info" > <div class="panel-heading" > <b>Master Barang</b>
</div>
71
<form class="form-horizontal" name="ListStandfrm" id="ListStandfrm" method="POST" action="" >
<div class="form-group">
<label class="control-label col-sm-1">Id Barang</label>
<div class="col-sm-2">
<input type="text" class="form-control input-sm" id="txtidbarang" name="txtidbarang" readonly="" value="<?php print $quoy ?>" />
</div> </div>
<div class="form-group">
<label class="control-label col-sm-1">Barang</label> <div class="col-sm-2">
<input type="text" class="form-control input-sm" id="txtbarang" name="txtbarang" autocomplete="off" />
</div> </div>
<div class="form-group">
<label class="control-label col-sm-1">Stock</label> <div class="col-sm-2">
<input type="text" class="form-control input-sm" id="txtstock" name="txtstock" autocomplete="off" />
72
</div> </div>
<div class="form-group">
<label class="control-label col-sm-1"></label> <div class="col-sm-4">
<button type="submit" class="btn btn-primary btn-sm" name="input" id="input" value="simpan">
<span></span> Save </button>
<a href="Listbarang.php"><span class="btn success btn-sm">List Barang</span></a> </div> </div> </form> </div> </div> </body> </html>
3 Report Barang Keluar
<?php
include "conn.php"; session_start();
73 if($_SESSION['nama'] == ""){ header("location:login.php"); die; } include "navbar.php"; @$fromtgl = $_POST['txtfrom']; @$totgl = $_POST['txtto']; ?> <!DOCTYPE html> <html> <head>
<title>Laporan Barang Keluar</title> <meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="code/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" media="all" href="jsDatePick_ltr.min.css" />
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/dt/dt-1.10.18/datatables.min.css"/>
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css"/>
74
<link rel="stylesheet"
href="https://cdn.datatables.net/buttons/1.5.4/css/buttons.dataTables.min.css" />
<link rel="stylesheet" href="code/css/tema.css" />
<script type="text/javascript" src="code/js/bootstrap.min.js" ></script> <script type="text/javascript" src="jquery-3.3.1.min.js"></script> <script type="text/javascript" src="jsDatePick.min.1.3.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script> <script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.4/js/dataTables.buttons.min.js"></ script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/pdfmake.min.js"> </script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.36/vfs_fonts.js"></sc ript> <script type="text/javascript" src="https://cdn.datatables.net/buttons/1.5.4/js/buttons.html5.min.js"></script > </head>
75
<body>
<div class="panel panel-info" > <div class="panel-heading" > <b>Laporan Barang Keluar</b> </div>
<div class="panel-body" >
<form class="form-inline" name="Rptklrfrm" id="Rptklrfrm" method="POST" action="" >
<div class="form-group" > <label>From:</label>
<input type="text" class="form-control input-sm" id="txtfrom" name="txtfrom" value="<?php print @$fromtgl ?>" readonly="" autocomplete="off" />
<label>To:</label>
<input type="text" class="form-control input-sm" id="txtto" name="txtto" value="<?php print @$totgl ?>" readonly="" autocomplete="off" />
<button class="btn btn-danger btn-sm" name="cari" id="cari" value="cari" >
<span class="glyphicon glyphicon-search"></span> Search </button>
76
</form> </div>
<div class="panel-body" >
<table id="tbklr" class="display nowrap" style="width:100%" > <thead> <tr> <th>ID Transaksi</th> <th>Nama Barang</th> <th>Tanggal</th> <th>Qty</th> <th>Karyawan</th> <th>Bagian</th> </tr> </thead> <tfoot> <tr> <th>ID Transaksi</th> <th>Nama Barang</th> <th>Tanggal</th> <th>Qty</th> <th>Karyawan</th> <th>Bagian</th> </tr> </tfoot>
77 </table> </div> </div> </body> </html> <script type="text/javascript"> $(document).ready(function(){ var from = $("#txtfrom").val(); var to = $("#txtto").val();
$('#tbklr tfoot th').each( function () { var title = $(this).text();
$(this).html( '<input type="text" placeholder="Search '+title+'" />' ); } );
var table = $("#tbklr").DataTable({ processing: true, ajax:{ type: "GET", url: "data.php?jenis=listklr&txfr="+from+"&txto="+to, dataSrc: "" }, columns:[ {"data":"id_transaksi"},
78 {"data":"nama_barang"}, {"data":"tgl"}, {"data":"qty"}, {"data":"nama_kry"}, {"data":"nama_depart"}, ], scrollY: '300px', scrollX: true, scrollCollapse: true, paging: true, dom: 'Bfrtip', buttons: [ { extend: 'excel',
title: 'Report Barang Keluar' }
] });
table.columns().every(function() { var that = this;
$( 'input', this.footer() ).on('keyup change', function (){ if ( that.search() !== this.value ) {
79 .search( this.value ) .draw(); } }); }); new JsDatePick({ useMode:2, target:"txtfrom", dateFormat:"%d-%m-%Y" }); new JsDatePick({ useMode:2, target:"txtto", dateFormat:"%d-%m-%Y" }); }); </script> <style> th { font-size: 13px; } td { font-size: 12px; } th, td { white-space: nowrap; }
80 div.dataTables_wrapper { margin: 0 auto; } tfoot input { width: 100%; padding: 3px; box-sizing: border-box; } </style> 3.1.1 Blackbox Testing
a. Form Login Admin
Tabel III.11
Tabel Form Login Admin
No. Skenario
Pengujian Test Case
Hasil Yang diharapkan Hasil Pengujian Kesimpulan 1. NIK dan password tidak diisi kemudian klik tombol “login” NIK : (kosong) Password : (kosong) Sistem akan menolak akses login dan menampilkan pesan “Login Gagal” Sesuai harapan Valid 2. Mengisi NIK dan password tidak diisi, lalu mengklik tombol “login” NIK: 1 Password : (kosong) Sistem akan menolak akses login dan menampilkan pesan “Login Gagal” Sesuai harapan Valid 3. NIKtidak diisi dan password NIK : (kosong) Password Sistem akan menolak akses
login dan akan
Sesuai
81 diisi, lalu mengklik tombol “login” : admin menampilkan pesan “Login Gagal” 4. Input salah satu benar dan satu lagi salah, lalu mengklik “login” NIK : 300028 (salah) Password : 123456 (benar) Sistem akan menolak akses login dan menampilkan pesan “Login Gagal” Sesuai harapan Valid 5. Menginput NIK dan password dengan benar, lalu mengklik “login” Username : 300027 (benar) Password : 123456 (benar) Sistem akan login dan menampilkan menu utama Sesuai harapan Valid
b. Form Master Barang
Tabel III.12
Tabel Form Master Barang
No. Skenario
Pengujian Test Case
Hasil Yang diharapkan Hasil Pengujian Kesimpulan 1. Mengisi data barang keseluruha n dengan benar lalu mengklik tombol “save” Id barang: B300030 Barang: WIRE ASSY 262-4866 Stock: 3 Sistem akan menampilkan pesan “Data Berhasil Disimpan” Sesuai harapan Valid 2. Hanya mengisi pada bagian Id barang lalu mengklik tombol “save” Id barang: B300030 Barang: (kosong) Stock: (kosong) Sistem akan menolak akses tambah barang dan menampilkan pesan “Data Kurang Lengkap” Sesuai harapan Valid 3. Hanya mengisi pada bagian Id barang: (kosong) Barang: WIRE Sistem akan menolak akses tambah barang dan Sesuai harapan Valid
82 barang lalu mengklik tombol “save” ASSY 262-4866 Stock: (kosong) menampilkan pesan “Data Kurang Lengkap”
c. Report Barang Keluar
Tabel III.13
Tabel Report Barang Keluar
No. Skenario
Pengujian Test Case
Hasil Yang diharapkan Hasil Pengujian Kesimpulan 1. Mengisi tanggal transaksi From: 1 Juli 2019 To : 31 Juli 2019 Menampilkan Report Barang Keluar Sesuai harapan Valid 2. Mengisi salah satu tabel Search dengan benar, misalnya mengisi Search Id Transaksi Search Id Transaksi: TR190700 02 (benar) Menampilkan Report Barang Keluar yang dicari Sesuai harapan Valid 3. Mengisi salah satu tabel Search dengan salah, misalnya mengisi Search Id Transaksi Search Id Transaksi: TR190700 0023 (salah) Menampilkan pesan: “No matching record found” Sesuai harapan Valid
83
3.1.2 Spesifikasi Hardware dan Software
Berikut standar minimal yang digunakan dalam sistem:
Kebutuhan Keterangan
Sistem Windows 7 64-bit
Processor Dual Core 3,00 Ghz
RAM 4 GB
Harddisk 500 GB
Monitor 16” LED
Keyboard Standard keyboard
Mouse Standard mouse
Printer Standard
Software Kebutuhan menjalankan aplikasi
secara local :
Bahasa script programming: Netbeans IDE 8.2
Web Server: Apache 3.2.1 DBMS: MySql