4.1 Komunikasi Dengan Pelanggan Komunikasi dengan pelanggan diperlukan untuk membangun komunikasi yang efektif antara pengembang dana pelanggan. Pada tahap ini penulis melakukan analisis kebutuhan, wawancara pada petugas gudang di PT. Asama Indonesia untuk mencari informasi mengenai sistem yang sedang berjalan seperti hambatan dan permasalah yang ada. Penulis juga melakukan observasi untuk mengamati kegiatan dan alur kerja dari sistem yang berjalan sekarang. 4.1.1 Analisis Sistem Yang Sedang Berjalan Untuk mengetahui masalah yang akan diteliti dan mengembangkan sistem yang ada saat ini diperlukan analisa permasalahan dari sistem yang sedang berjalan saat ini. Proses yang terjadi dalam sebuah gudang biasanya meliputi kegiatan pengiriman barang, input data barang, cek stok barang, pembuatan laporan. Proses pendataan barang yang masih manual biasanya sering terjadinya kesalahan dalam memasukan data. Berikut adalah gambaran dari sistem yang sedang berjalan.
Produksi
Start
PPIC
Warehouse
Customer
Control Tag
Control Tag
N
Cek Control Tag
Sesuai ?
Y
Cek Control Tag
Control Tag
Control Tag
Data Excel
End
4.1.2 Analisis Masalah Analisis ini dilakukan untuk mengetahui permasalahan yang sering terjadi pada sistem inventori gudang yang sedang berjalan saat ini, sehingga dapat diketahui solusi untuk setiap permasalahan yang ada dan mengembangkan sistem yang lebih baik. Analisis yang dilakukan meliputi alur dan sistem kerja serta cara kerja operator di gudang PT. Asama Indonesia Berdasarkan data yang didapat, jumlah barang masuk dan barang keluar serta stok barang berubah-ubah setiap harinya dan waktu pengiriman barang yang harus tepat waktu, karena itu diperlukan sebuah sistem yang dapat meningkatkan kinerja gudang serta dapat memanajemen stok barang dan data-data penting lainnya sehingga dapat mempermudah kerja operator gudang dan memperoleh hasil yang lebih baik. Setelah melakukan observasi dan wawancara dengan pihak gudang PT. Asama Indonesia maka hasil analisis yang didapat adalah : 1. Data-data mengenai stok barang, barang masuk, barang keluar, dan data lainnya di rekap menggunakan program Ms. Excel. 2. Penginputan data masih manual yaitu mengetikan langsung dengan keyboard sehingga waktu penginputan jadi lebih banyak. 3. Sering terjadinya kesalahan dalam memasukan data barang, no lot untuk barang yang akan dikirim. 4. Pembuatan laporan menggunakan program Ms. Excel. Tanpa terintegrasi dengan database. 4.1.3 Analisis Kebutuhan Analisis ini diperlukan untuk mengetahui pengembangan yang dibutuhkan untuk membangun sistem yang akan digunakan sebagai media input data. Berdasarkan analisis masalah dan analisis sistem yang sedang berjalan maka hasil yang didapat adalah sebagai berikut ; 1. Operator menginginkan solusi input data yang lebih baik agar tidak terjadi kesalahan dalam penginputan data barang dan pembuatan laporan.
2. Adanya tempat penyimpanan data yang lebih baik dari sekarang sehingga dapat membuat backup data dan laporan berdasarkan basis data tersebut. 4.1.3.1 Kebutuhan Software Untuk keperluan pengembangan sistem, membutuhkan beberapa perangkat lunak, diantaranya : 1. Integrated Development Environtment (IDE), penulis menggunakan Netbeans IDE yang berbasis opensource. 2. Java Development Kit (JDK) dan Java Runtime Environtment (JRE), aplikasi ini juga berbasis opensource. 3. IReports, penulis menggunakan Jasper Reports yang berbasis opensource. 4. Database Management System (DBMS), penulis menggunakan XAMPP yang berbasis opensource. 4.1.3.2 Kebutuhan Hardware Perangkat keras yang dibutuhkan untuk pembuatan serta menjalankan aplikasi yang akan dibuat adalah sebagai berikut : 1. Satu unit personal computer (PC) lengkap dengan sistem dual core dan RAM 2 GHz. 2. Printer untuk proses pelaporan dan pembuatan barcode. 3. Barcode reader untuk media input data barang. Sementara untuk waktu yang dibutuhkan dalam pembuatan aplikasi ini adalah 5 bulan yang meliputi tahapan-tahapan dalam metode penelitian seperti komunikasi dengan pelanggan, perencanaan, analisis resiko, rekayasa, konstruksi dan peluncuran, dan evaluasi pelanggan dalam hal ini user yang akan menggunakan aplikasi ini.
4.2 Perencanaan Aktifitas ini diperlukan untuk mendefinisikan desain dari perangkat lunak dan desain interface aplikasi gudang. Adapun desain perangkat lunak dan database menggunakan UML yang meliputi Use Case Diagram, Class Diagram, Sequence Diagram, Activity Diagram. 4.2.1 Desain Aplikasi Dalam desain sistem perangkat lunak penulis akan mengambarkan sistem yang diusulkan dengan alat bantu UML (Unified Modeling Language) yaitu use case diagram, class diagram, sequence diagram dan activity diagram., untuk toolsnya menggunakan StarUML. UML yang dibuat berdasarkan data yang didapat dari hasil komunikasi dengan pelanggan mengenai kebutuhan sistem yang akan dikembangkan dan informasi yang terkait dengan pengembangan sistem. A. Use Case Diagram Dalam penelitian ini penulis menggunakan diagram use case untuk menggambarkan interaksi perangkat lunak dengan user. Dalam perangkat lunak ini penulis membuat beberapa use case antara lain login, mengelola data part, mengubah data part, menambahkan data part, mengelola data operator, menambahkan data operator, mengubah data operator, mengelola data customer, menambah data cutomer, mengubah data customer, control data machining, input data tag machining, simpan data machining, control data casting, input data casting, simpan data casting. Berikut adalah diagram use case dari aplikasi gudang ini :
1. Definisi Aktor Berikut ini adalah pendefinisian aktor pada perangkat lunak aplikasi gudang : Tabel 4.1 Definisi Aktor
No 1. Aktor Operator PPIC Deskripsi Operator yang mengatur stok barang yang menjadi admin dari aplikasi ini. Operator yang mengatur produksi barang. Terbagi menjadi 2 yaitu operator tag casting dan operator tag machining.
2.
Operator produksi
2. Definisi Use Case Berikut ini adalah definisi dari use case perangkat lunak aplikasi gudang : Tabel 4.2 Definisi Use Case
No 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Login Data part Simpan data part Hapus data part Ubah data part Data customer Simpan data customer Hapus data customer Ubah data customer Data operator Simpan data operator Hapus data operator Ubah data operator Data tag casting Simpan data tag casting Hapus data tag casting Nama Use Case Deskripsi Use case yang digunakan untuk melakukan validasi hak akses dari operator dan admin Data part berfungsi untuk mengelola data part Berfungsi untuk menyimpan data part kedalam database Berfungsi untuk menghapus data part kedalam database Berfungsi untuk mengubah data part kedalam database Data customer berfungsi untuk mengelola data customer Berfungsi untuk menyimpan data customer kedalam database Berfungsi untuk menghapus data customer kedalam database Berfungsi untuk mengubah data customer kedalam database Data operator berfungsi untuk mengelola data operator Berfungsi untuk menyimpan data operator kedalam database Berfungsi untuk menghapus data operator kedalam database Berfungsi untuk mengubah data operator kedalam database Data tag casting berfungsi untuk mengelola data tag casting Berfungsi untuk menyimpan data tag casting kedalam database Berfungsi untuk menghapus data tag casting kedalam database
17 18
Berfungsi untuk mengubah data tag casting kedalam database Data tag machining berfungsi untuk mengelola data tag machining Berfungsi untuk menyimpan data tag machining kedalam database Berfungsi untuk menghapus data tag machining kedalam database Berfungsi untuk mengubah data tag machining kedalam database
19
20
21
3. Skenario Use Case Berikut ini adalah scenario dari use case yang sudah dideskripsikan diatas : Tabel 4.3 Skenario Use case Login
Nama Aktor Tujuan : : :
Login
Operator PPIC dan Produksi Melakukan validasi akun Rincian kegiatan
Skenario Normal No 1. Kegiatan Aktor Memasukan username dan password 1. 2. Skenario Alternatif 1. Memasukan username dan password 1. 2. Mengecek valid tidaknya masukan Menampilkan pesan login tidak valid Respon Sistem Mengecek valid tidaknya masukan Masuk ke menu utama
Skenario Normal No 1. Kegiatan Aktor Memasukan data part 1. 2. 3. Skenario Alternatif 1. Memasukan data part 4. 5. Mengecek valid tidaknya masukan Menampilkan pesan data tidak bisa tersimpan Respon Sistem Mengecek valid tidaknya masukan Menyimpan data ke basis data Menampilkan pesan data telah tersimpan
Skenario Normal No 1. Kegiatan Aktor Memilih data yang akan dihapus 1. 2. 2. Mengklik pilihan setuju 3. Skenario Alternatif 1. Memilih data yang akan dihapus 4. 5. 2. Mengklik pilihan tidak setuju 6. Kembali ke menu data part Menampilkan data yang dipilih Menampilkan pesan konfirmasi Menampilkan pesan data telah dihapus Respon Sistem Menampilkan data yang dipilih Menampilkan pesan konfirmasi
Skenario Normal No 1. 2. Kegiatan Aktor Memilih data yang akan diubah Mengubah data yang akan diubah 2. 3. Mengklik pilihan setuju 3. Skenario Alternatif 1. 2. Memilih data yang akan diubah Mengubah data yang akan diubah 2. 3. Mengklik pilihan tidak setuju 3. Kembali ke menu data part Menampilkan pesan konfirmasi 1. Menampilkan data yang dipilih Menampilkan pesan data telah diubah Menampilkan pesan konfirmasi 1. Respon Sistem Menampilkan data yang dipilih
Skenario Normal No 1. 2. Kegiatan Aktor Memilih data yang akan diubah Mengubah data yang akan diubah 5. 3. Mengklik pilihan setuju 6. Skenario Alternatif 1. 2. Memilih data yang akan diubah Mengubah data yang akan diubah 4. Menampilkan data yang dipilih Menampilkan pesan data telah diubah Menampilkan pesan konfirmasi 4. Respon Sistem Menampilkan data yang dipilih
2.
Skenario Normal No 1. 2. Kegiatan Aktor Memilih data yang akan diubah Mengubah data yang akan diubah 8. 3. Mengklik pilihan setuju 9. Skenario Alternatif 1. 2. Memilih data yang akan diubah Mengubah data yang akan diubah 8. 3. Mengklik pilihan tidak setuju 9. Kembali ke menu data tag casting Menampilkan pesan konfirmasi 7. Menampilkan data yang dipilih Menampilkan pesan data telah diubah Menampilkan pesan konfirmasi 7. Respon Sistem Menampilkan data yang dipilih
18. Menampilkan pesan data telah tersimpan Skenario Alternatif 1. Memasukan data tag machining 19. Mengecek valid tidaknya masukan 20. Menampilkan pesan data tidak bisa tersimpan
Skenario Normal No 1. 2. Kegiatan Aktor Memilih data yang akan diubah Mengubah data yang akan diubah Respon Sistem 10. Menampilkan data yang dipilih
11. Menampilkan pesan konfirmasi 3. Mengklik pilihan setuju 12. Menampilkan pesan data telah diubah Skenario Alternatif 1. 2. Memilih data yang akan diubah Mengubah data yang akan diubah 11. Menampilkan pesan konfirmasi 3. Mengklik pilihan tidak setuju 12. Kembali ke menu data tag machining 10. Menampilkan data yang dipilih
Gambar 4.2 Use Case Diagram Operator Tag Casting Aplikasi Gudang
Gambar 4.3 Use Case Diagram Operator Tag Machining Aplikasi Gudang
Operator casting dan machining melakukan login ke aplikasi setelah itu baru bisa melakukan penginputan data. Data yang diinput berupa nama customer, nama dan ID barang, dan nama operator. Setelah melakukan penginputan data, maka data disimpan dalam database. Hak akses untuk operator casting dan machining hanya meliputi input ddata, simpan data, dan edit data. B. Class Diagram Class diagram digunakan untuk menggambarkan struktur sistem dari pendefinisian kelas-kelas yang akan digunakan untuk membangun sistem. Dibawah ini merupakan class diagram dari ap likasi gudang.
Login
Koneksi
Data part
Data Customer
Data Operator
10
Customer
C. Sequence Diagram Sequence diagram digunakan untuk menggambarkan prilaku objek dengan mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima natar objek. Untuk menggambar sequence diagram dibutuhkan objek yang terlibat dalam sistem yang akan dibuat beserta metode yang dimiliki kelas-kelas yang diinstansiasi menjadi objek itu. Dibawah ini adalah gambar dari Sequence diagram aplikasi gudang.
Gambar 4.5 Sequence Diagram Dari Kelas Login Operator dan admin memasukan username dan password untuk membuka aplikasi. Kemudian aplikasi akan melakukan validasi yang disesuaikan dengan database dan akan masuk ke menu utama jika valid dan akan menampilkan pesan error jika tidak valid.
Gambar 4.6 Sequence Diagram Dari Kelas Hapus Dan Ubah Data Part Pada Aplikasi Gudang Operator atau admin memilih data part yang ada di table dengan mengklik data yang akan diubah atau dihapus. Kemudian data akan muncul di form input data part dan akan terhapus jika operator mengklik tombol hapus dan akan diubah bila mengklik tombol ubah.
Gambar 4.7 Sequence Diagram Dari Kelas Simpan Data Part Pada Aplikasi Gudang Operator atau admin memasukan data part di form input yang sudah ada. Kemudian ketika menekan tombol simpan maka aplikasi akan membuka koneksi ke database dan akan menyimpan data kemudian menampilkannya di tabel aplikasi.
Gambar 4.8 Sequence Diagram Dari Kelas Kelas Hapus Dan Ubah Data Operator Pada Aplikasi Gudang
Operator atau admin memilih data operator yang ada di table dengan mengklik data yang akan diubah atau dihapus. Kemudian data akan muncul di form input data operator dan akan jika terhapus operator mengklik tombol hapus dan akan diubah bila mengklik tombol ubah.
Gambar 4.9 Sequence Diagram Dari Kelas Simpan Data Operator Pada Aplikasi Gudang Operator atau admin memasukan data operator di form input yang sudah ada. Kemudian ketika menekan tombol simpan maka aplikasi akan membuka koneksi ke database dan akan menyimpan data kemudian menampilkannya di tabel aplikasi.
Gambar 4.10 Sequence Diagram Dari Kelas Kelas Hapus Dan Ubah Data Customer Pada Aplikasi Gudang
Operator atau admin memilih data customer yang ada di tabel dengan mengklik data yang akan diubah atau dihapus. Kemudian data akan muncul di form input data customer dan akan jika terhapus operator mengklik tombol hapus dan akan diubah bila mengklik tombol ubah.
Gambar 4.11 Sequence Diagram Dari Kelas Simpan Data Customer Pada Aplikasi Gudang
Operator atau admin memasukan data customer di form input yang sudah ada. Kemudian ketika menekan tombol simpan maka aplikasi akan membuka koneksi ke database dan akan menyimpan data kemudian menampilkannya di tabel aplikasi.
Gambar 4.12 Sequence Diagram Dari Kelas Kelas Hapus Dan Ubah Data Tag Machining Pada Aplikasi Gudang
Operator atau admin memilih data Tag Machining yang ada di tabel dengan mengklik data yang akan diubah atau dihapus. Kemudian data akan muncul di form input data Tag Machining dan akan jika terhapus operator mengklik tombol hapus dan akan diubah bila mengklik tombol ubah.
Gambar 4.13 Sequence Diagram Dari Kelas Simpan Data Tag Machining Pada Aplikasi Gudang Operator atau admin memasukan data Tag Machining di form input yang sudah ada. Kemudian ketika menekan tombol simpan maka aplikasi akan membuka koneksi ke database dan akan menyimpan data kemudian menampilkannya di tabel aplikasi.
Gambar 4.14 Sequence Diagram Dari Kelas Simpan Data Tag Casting Pada Aplikasi Gudang Operator atau admin memasukan data Tag Casting di form input yang sudah ada. Kemudian ketika menekan tombol simpan maka aplikasi akan membuka koneksi ke database dan akan menyimpan data kemudian menampilkannya di tabel aplikasi.
Gambar 4.15 Sequence Diagram Dari Kelas Kelas Hapus Dan Ubah Data Tag Casting Pada Aplikasi Gudang Operator atau admin memilih data Data Tag Casting yang ada di tabel dengan mengklik data yang akan diubah atau dihapus. Kemudian data akan muncul di form input data Data Tag Casting dan akan jika terhapus operator mengklik tombol hapus dan akan diubah bila mengklik tombol ubah.
D. Activity Diagram
Gambar 4.16 Activity Diagram Dari Aplikasi Gudang activity diagram digunakan untuk menggambarkan aliran kerja sistem atau aktifitas atau proses bisnis dari sistem yang akan dibuat. Activity diagram menggambarkan aktivitas sistem bukan aktivitas yang dilakukan aktor. Dibawah ini adalah activity diagram dari aplikasi gudang.
Operator atau admin membuka aplikasi kemudian memasukan username dan password. Bila login tidak valid maka akan muncul pesan error dan diminta mengulangi lagi. Jika login valid maka akan masuk menu utama yang terdiri dari data part, data customer, data sub order, data tag machining, data tag casting, dan laporan 4.2.2 Desain Database Desain database dilakukan dengan menentukan nama entitas yang diuraikan dalam desain use case dan class diagram, serta disesuaikan dengan kebutuhan pembangunan aplikasi transaksi gudang. Berikut ini adalah daftar rincian setiap entitas dalam database aplikasi gudang. Tabel 4.17 Part Nama Field Kode_Part Nama_Part Customer Stok Tipe Data Varchar Varchar Varchar Int Length 30 30 30 15 Keterangan Primary Key Foreign key
Tabel 4.18 Customer Nama Field Kode_Customer Nama_Customer Alamat Telepon Tipe Data Varchar Varchar Varchar Varchar Length 30 30 30 30 Keterangan Primary Key Foreign key
Tabel 4.19 Casting Nama Field Customer Nama_Part Kode_Part No_Lot Tgl_Packing Jumlah_Part Total Tgl_Delivery No_Tag Tipe Data Varchar Varchar Varchar Varchar Varchar Int Int Varchar Varchar Length 30 30 30 30 30 30 30 30 30 Keterangan Primary Key Foreign key
Tabel 4.19 Machining Nama Field Customer Nama_Part Kode_Part No_Lot Tgl_Packing Jumlah_Part Total Tgl_Delivery No_Tag Tipe Data Varchar Varchar Varchar Varchar Varchar Int Int Varchar Varchar Length 30 30 30 30 30 30 30 30 30 Keterangan Primary Key Foreign key
Tabel 4.20 Laporan Stok Nama Field Kode_Part Nama_Part Customer Stok Tipe Data Varchar Varchar Varchar Int Length 30 30 30 15 Keterangan Primary Key Foreign key
Tabel 4.21 Laporan Out Nama Field Customer Nama_Part Kode_Part No_Lot Tgl_Packing Jumlah_Part Total Tgl_Delivery No_Tag Tipe Data Varchar Varchar Varchar Varchar Varchar Int Int Varchar Varchar Length 30 30 30 30 30 30 30 30 30 Keterangan Primary Key Foreign key
4.4.3 Desain Interface Desain Interface merupakan rancangan antarmuka (interface) program yang akan diimplementasikan dan dibawah adalah gambaran dari tampilan aplikasi gudang di PPIC PT. Asama Indonesia.
Gambar 4.17 Desain Form Login Pada desain form terdapat textfield untuk user dan password yang terhubung ke database untuk memvalidasi pengguna aplikasi ini. Setelah login, user akan dibawa masuk ke menu utama.
Gambar 4.18 Desain Menu Utama Gambar diatas merupakan desain interface dari menu utama aplikasi gudang. Pada menu utama terdapat menu untuk menghubungkan ke menu lain seperti Part, Customer, sub order, casting, machining, laporan. Terdapat pula menu bar diatas yang berfungsi menampilkan submenu lain.
Gambar 4.19 Desain Menu Part Gambar diatas merupakan desain dari menu Part yang berfungsi untuk memasukan data Part atau barang yang ada dihudang. Pada desain diatas terdapat textfield untuk memasukan data Part dan akan menampilkannya di tabel bila data disimpan di database.
Gambar 4.20 Desain Menu Customer Gambar diatas merupakan desain interface dari menu Customer yang digunakan untuk memasukan data Customer dan menampilkannya di tabel. Terdapat beberapa fungsi seperti simpan, update, refresh, hapus, keluar.
Gambar 4.21 Desain Menu Casting Gambar diatas merupakan desain dari menu casting. Menu casting terdapat banya inputan karena menu casting digunakan untuk input data pengiriman barang.
Gambar diatas merupakan desain dari menu machining. Menu machining terdapat banya inputan karena menu machining digunakan untuk input data pengiriman barang.
Gambar 4.22 Desain Menu Laporan Out Gambar diatas adalah desain interface dari menu laporan out yang digunakan untuk membuat laporan barang keluar atau pengiriman barang.
Gambar 4.23 Desain Menu Laporan Stok Gambar diatas adalah desain interface dari menu laporan stok barang yang digunakan untuk membuat laporan stok barang yang ada di gudang. 4.3 Analisis Resiko Pada penelitian ini , penulis menggunakan analisis SWOT untuk menganalisis Kekuatan (Strength), Kelemahan (Weakness), Peluang (Opportunity), dan Ancaman (Threat). Tabel 4.22 Tabel Analisis Resiko Kriteria Kekuatan (Strength) Analisis Resiko 1. Akses penelitian mudah karena dilakukan di internal perusahaan tempat bekerja. 2. Multi platform karena menggunakan Java 3. Menggunakan Barcode Scanner untuk mempercepat input data Rendah Rendah Dampak Rendah
Kelemahan (Weakness)
1. Harus menggunakan printer yang memiliki kualitas bagus untuk mencetak barcode 2. Hanya digunakan untuk Warehouse 3. Membutuhkan Barcode Scanner
Tinggi
Sedang Rendah
Peluang 1. Potensi pengembangan aplikasi untuk dihubungkan (Opportunity dengan bagian lain. ) 2. Peluang menambahkan fitur baru 3. Peluang menambah /mengganti fungsi aplikasi untuk sistem yang lain Ancaman (Threat) 1. Adanya perubahan sistem yang tidak sesuai dengan aplikasi. 2. Adanya permasalahan yang tidak bisa diselesaikan aplikasi 3. Peluang kerusakan pada komputer 4. Ancaman user kurang ahli menjalankan sistem
Rendah
Sedang Rendah
Tinggi
Tinggi
Sedang Sedang
Dari hasil analisis SWOT tersebut dapat ditarik kesimpulan bahwa resiko yang mempunyai dampak tertinggi ada Ancaman yaitu: 1. Adanya perubahan sistem yang tidak sesuai dengan aplikasi. 2. Adanya permasalahan yang tidak bisa diselesaikan aplikasi
4.4 Rekayasa Aktifitas ini diperlukan untuk membangun satu atau lebih representasi dari aplikasi perangkat lunak. Pada tahap ini penulis melakukan pengkodingan sistem yang dikembangkan berdasarkan data yang dikumpulkan mengenai sistem inventory gudang.
4.4.1
pemrograman berbasis objek sebagai dasar dari pembuatan aplikasi gudang dan menggunakan UML (Unified Model Language). Bahasa pemrograman yang digunakan adalah Java dan menggunakan Netbeans sebagai IDE serta menggunakan software Pencil sebagai perancangan interface aplikasi. Pada pembuatan kode program penulis menggunakan beberapa hardware dan software yang digunakan sebagai pendukung dalam pembuatan aplikasi, diantaranya : 4.3.1 Hardware Perangkat keras yang digunakan penulis sebagai pendukung pembuatan program antara lain : 1. Laptop Dual Core dengan RAM 1GB 2. Barcode Scanner 3. Printer
4.3.2
Software Sedangkan untuk perangkat lunak yang digunakan penulis sebagai pendukung
pembuatan program antara lain : 1. Sistem Operasi Windows XP 2. Netbeans 3. Pencils 4. Star UML
4.5 Konstruksi dan peluncuran Aktifitas ini diperlukan untuk mengonstruksi, menguji, melakukan, instalasi, dan menyediakan dukungan terhadap user. Pada tahap ini penulis melakukan pengujian pengujian sistem yang siap pakai. 4.5.1 Pengujian Black Box Tabel 4.23 Rencana Pengujian Form 1. Login 2. Menu Utama 3. Data Part 4. Data Customer 5. Sub Order Operator Menguji tombol menu Menguji bar menu Masukan data Part Pengujian tombol Masukan data Customer Pengujian tombol Uji Jenis Pengujian Pengujian Black Box Pengujian Black Box Pengujian Black Box Pengujian Black Box
Menampilkan data casting Pengujian Black Box dan machining Pengujian tombol Pengujian Black Masukan Data casting Box Pengujian tombol Masukan Data machining Pengujian tombol Menampilkan data stok Pengujian tombol Menampilkan data keluar Pengujian tombol Pengujian Black Box Pengujian Black Box
Masukkan pada form username dan password yang benar sesuai dengan data di database
Kasus dan Hasil Uji (Data Tidak Normal) Data Masukan Yang Diharapkan Pengamatan Kesimpulan
User tidak dapat login sebagai admin sehingga tidak sesuai harapan. Menampilkan pesan User tidak dapat error username atau login sebagai password tidak admin sehingga cocok! tidak sesuai harapan.
Berhasil menyimpan data kedalam database dan menampilkan nya ditabel penjualan barang
Kasus dan Hasil Uji (Data Tidak Normal) Data Masukan Yang Diharapkan Pengamatan Kesimpulan
Gagal menyimpan data ke database dan menampilkan pesan error Masih ada data
yang kosong silahkan di lengkapi Tidak bisa menyimpan masukan karakter khusus
Kasus dan Hasil Uji Pengujian tombol Yang Diharapkan Pengamatan Kesimpulan
Menyimpan data Part dan menampilkan nya di tabel Part. Data dihapus dari database dan muncul pesan data telah terhapus
Tombol refresh sesuai dengan yang diharapkan Tombol simpan sesuai dengan yang diharapkan Tombol hapus sesuai dengan yang diharapkan
Berhasil menyimpan data kedalam database dan menampilkan nya ditabel penjualan barang
Kasus dan Hasil Uji (Data Tidak Normal) Data Masukan Yang Diharapkan Pengamatan Kesimpulan
Gagal menyimpan data ke database dan menampilkan pesan error Masih ada data yang kosong silahkan di lengkapi
Kasus dan Hasil Uji Pengujian tombol Yang Diharapkan Pengamatan Kesimpulan
Menyimpan data Customer dan menampilkan nya di tabel Customer. Data dihapus dari database dan muncul pesan data telah terhapus
Tombol refresh sesuai dengan yang diharapkan Tombol simpan sesuai dengan yang diharapkan Tombol hapus sesuai dengan yang diharapkan
Berhasil menyimpan data kedalam database dan menampilkan nya ditabel penjualan barang
Kasus dan Hasil Uji (Data Tidak Normal) Data Masukan Yang Diharapkan Pengamatan Kesimpulan
diisi dengan
Gagal menyimpan data ke database dan menampilkan pesan error Masih ada data yang kosong silahkan di lengkapi Tidak bisa menyimpan masukan karakter
[x] Diterima
khusus
sesuai harapan
[ ] Ditolak
Kasus dan Hasil Uji Pengujian tombol Yang Diharapkan Pengamatan Kesimpulan
Menyimpan data casting dan menampilkan nya di tabel Customer. Data dihapus dari database dan muncul pesan data telah terhapus
Tombol refresh sesuai dengan yang diharapkan Tombol simpan sesuai dengan yang diharapkan Tombol hapus sesuai dengan yang diharapkan
Berhasil menyimpan data kedalam database dan menampilkan nya ditabel penjualan barang
Kasus dan Hasil Uji (Data Tidak Normal) Data Masukan Yang Diharapkan Pengamatan Kesimpulan
Gagal menyimpan data ke database dan menampilkan pesan error Masih ada data yang kosong silahkan di lengkapi Tidak bisa menyimpan masukan karakter khusus
Kasus dan Hasil Uji Pengujian tombol Yang Diharapkan Pengamatan Kesimpulan
Menyimpan data machining dan menampilkan nya di tabel Customer. Data dihapus dari database dan muncul pesan data telah terhapus
Tombol refresh sesuai dengan yang diharapkan Tombol simpan sesuai dengan yang diharapkan Tombol hapus sesuai dengan yang diharapkan
Kasus dan Hasil Uji (Data Tidak Normal) Data Masukan Yang Diharapkan Pengamatan Kesimpulan
Kasus dan Hasil Uji Pengujian tombol Yang Diharapkan Pengamatan Kesimpulan
Sorting Part sesuai dengan yang diharapkan Sorting no. lot sesuai dengan yang diharapkan
tombol data Part sesuai dengan yang diharapkan tombol data Customer sesuai dengan yang diharapkan tombol data casting sesuai dengan yang diharapkan tombol data machining sesuai dengan yang diharapkan tombol data sub order sesuai dengan yang diharapkan tombol data Part sesuai dengan yang diharapkan tombol data Customer
Customer
sesuai dengan yang diharapkan tombol data casting sesuai dengan yang diharapkan tombol data machining sesuai dengan yang diharapkan tombol data sub order sesuai dengan yang diharapkan
[ ] Ditolak
Kasus dan Hasil Uji (Data Tidak Normal) Data Masukan Yang Diharapkan Pengamatan Kesimpulan
Kasus dan Hasil Uji Pengujian tombol Yang Diharapkan Pengamatan Kesimpulan
diharapkan Masukan nama Part Masukan No. lot Menampilkan data berdasarkan Part Sorting Part sesuai dengan yang diharapkan Sorting no. lot sesuai dengan yang diharapkan [x] Diterima [ ] Ditolak
Kasus dan Hasil Uji (Data Tidak Normal) Data Masukan Yang Diharapkan Pengamatan Kesimpulan
Kasus dan Hasil Uji Pengujian tombol Yang Diharapkan Pengamatan Kesimpulan
combo box Customer sesuai dengan yang diharapkan Sorting Part sesuai dengan yang diharapkan
4.5.2 Pengujian White Box Pengujiian whitebox dilakukan pada tahap kompilasi program dengan melihat debugging window, sehingga dapat terlihat kesalahan yang muncul dan langsung memperbaikinya. Pada whitebox testing juga dilakukan pemeriksa kebenaran dari logika percabangan dan looping kode program yang dapat dilihat pada debungging window apakah logika percabangan dan looping telah sesuai dengan harapan.
1. Pengujian Form Login Pada pengujian ini akan menampilkan kode program dan alur yang terjadi pada proses login di aplikasi gudang PT. Asama Indonesia. Tabel 4.32 Pengujian White Box Form Login Connection koneksi=(Connection) new koneksi().getCon(); 1 ResultSet rsLogin; Statement StmLogin; try{ String username = user.getText(); String password = new String(pass.getPassword()); StmLogin = koneksi.createStatement(); rsLogin = StmLogin.executeQuery("Select * from user where Username ="+"'"+username+"'"+"and password ='"+password+"'"); int baris = 0;
3 4 5 6 7 8 9 10
while (rsLogin.next()){ baris = rsLogin.getRow(); } if (baris == 1){ new menu_utama().show(); this.dispose(); }else{ JOptionPane.showMessageDialog(null,"Login gagal"); } }catch(Exception e){ JOptionPane.showMessageDialog(null, e); }
10
Gambar 4.24 Pengujian White Box Form Login V(G) = E N+2 = 13-10+2 = 5 V(G) = R-1 = 4+1 = 5 V(G) = P +1 = 4+1 = 5
2. Pengujian Fungsi Baca Data Pada pengujian ini akan menampilkan kode program dan alur yang terjadi pada proses Baca Data di aplikasi gudang PT. Asama Indonesia. Fungsi ini digunakan untuk menampilkan data di database di tabel aplikasi. Pengujian ini juga mewakili fungsi baca data di menu Customer, Casting, Machining dan Laporan karena yang membedakan hanya nama variabel dan nama tabel database saja. Tabel 4.33 Pengujian White Box Fungsi BacaData Connection koneksi=(Connection) new koneksi().getCon(); ResultSet TampilPart; Statement StmPart; 1 DefaultComboBoxModel model = new DefaultComboBoxModel(); private Object [][] dataTabelPart=null; private String[] headerPart = {"No","Kode","Nama Part","Customer"}; try { StmPart = koneksi.createStatement(); TampilPart = StmPart.executeQuery("Select * from part 2 order by No"); ResultSetMetaData meta = TampilPart.getMetaData(); int col = meta.getColumnCount(); int baris = 0; 3 4 while(TampilPart.next()){ baris = TampilPart.getRow(); } dataTabelPart = new Object[baris][col]; 5 int x =0; TampilPart.beforeFirst();
while (TampilPart.next()){ dataTabelPart[x][0]=TampilPart.getString("No"); dataTabelPart[x][1]=TampilPart.getString("Kode_Part"); dataTabelPart[x][2]=TampilPart.getString("Nama_Part"); dataTabelPart[x][3]=TampilPart.getString("Customer"); x++; } TabelBarang.setModel(new DefaultTableModel(dataTabelPart, headerPart)); }catch (SQLException e){ JOptionPane.showMessageDialog(null, e); } }
8 9 10
10
Gambar 4.25 Pengujian White Box Fungsi Baca Data V(G) = E-N+2 = 13-10+2 = 5 V(G) = R+1 = 4+1 = 5 V(G) = P+1 = 4+1 = 5 Path = 1-2-9-10 = mengecek koneksi ke database bila tidak terhubung akan muncul pesan error dan data tidak tampil di tabel.
Path = 1-2-3-4-3-5-6-7-6-8-9-10 = mengecek koneksi database lalu mengecek jumlah kolom di database jika belum sesuai akan looping dan jika sudah sesuai akan menampilkan data sesuai dengan urutan inputan data yang dimasukan. Path = 1-2-3-5-6-8-9-10 = = mengecek koneksi database lalu mengecek jumlah kolom di database jika belum sesuai akan looping dan jika sudah sesuai akan mengecek kolom database apakah sudah sama atau belum jika belum akan muncul pesan error. Path = 1-2-3-4-3-5-6-8-9-10 = mengecek koneksi database lalu mengecek jumlah kolom di database jika belum sesuai akan looping dan jika sudah sesuai akan mengecek kolom database apakah sudah sama atau belum jika belum akan muncul pesan error. Path = 1-2-3-5-6-8-9-10 = mengecek koneksi database lalu mengecek jumlah kolom di database jika belum sesuai akan looping dan jika sudah sesuai akan mengecek kolom database apakah sudah sama atau belum jika belum akan muncul pesan error. 3. Pengujian Fungsi Simpan Pada pengujian ini akan menampilkan kode program dan alur yang terjadi pada proses Simpan di aplikasi gudang PT. Asama Indonesia. Fungsi ini digunakan untuk menyimpan data ke database. Pengujian ini juga mewakili fungsi simpan di menu Customer, Casting, Machining karena yang membedakan hanya nama variabel dan nama tabel database saja. Tabel 4.34 Pengujian White Box Fungsi Simpan String Kode_Part = InputKodeBarang.getText(); 1 String Nama_Part = InputNamaBarang.getText(); String Customer_Part = (String) InputCustomerBarang.getSelectedItem(); 2 try{
String sql = "Insert into part (Kode_Part,Nama_Part,Customer) values"+ "('"+Kode_Part+"','"+Nama_Part+"','"+Customer_Part+"')"; StmPart.executeUpdate(sql); StmPart.close(); 3 JOptionPane.showMessageDialog(null, "Input Data Berhasil"); No.setText(""); InputKodeBarang.setText(""); InputNamaBarang.setText(""); bacaDataPart(); 4 catch(SQLException e){ JOptionPane.showMessageDialog(null, e); 5 } }
Gambar 4.25 Pengujian White Box Fungsi Simpan V(G) = E-N+2 = 5-5+2 = 2 V(G) = R+1 = 1+1 = 2 V(G) = P+1 =1+1 =2 Path = 1-2-3-4-5 = mengecek koneksi database dan data yang dimasukan bila sesuai akan tersimpan ke database dan akan muncul data telah tersimpan. Path = 1-2-4-5 = mengecek koneksi dan data masukan jika tidak sesuai maka maka akan muncul pesan error.
4. Pengujian Fungsi Update Pada pengujian ini akan menampilkan kode program dan alur yang terjadi pada proses Update di aplikasi gudang PT. Asama Indonesia. Fungsi ini digunakan untuk mengubah data di database. Pengujian ini juga mewakili fungsi Update di menu Customer, Casting, Machining karena yang membedakan hanya nama variabel dan nama tabel database saja.
Tabel 4.35 Pengujian White Box Fungsi Update String id = No.getText(); String Kode = InputKodeBarang.getText(); 1 String Nama = InputNamaBarang.getText(); String Customer = (String) InputCustomerBarang.getSelectedItem(); 2 try{ String message = "Update Data Ini"; 3 int baris = JOptionPane.showConfirmDialog(null, message, "Konfirmasi Update Data", JOptionPane.YES_NO_OPTION); 4 if (baris == 0){ String sql = "Update part set Kode_Part = '"+Kode+"',Nama_Part = '"+Nama+"',Customer = '"+Customer+"' "+ "where No = '"+id+"'"; 5 StmPart.executeUpdate(sql); StmPart.close(); JOptionPane.showMessageDialog(null, "Update Data Berhasil"); No.setText("");
Gambar 4.26 Pengujian White Box Fungsi Update V(G) = E-N+2 = 8-7+2 = 3 V(G) = R+1 = 2+1 = 3 V(G) = P+1 =2+1 =3 Path = 1-2-3-4-5-6-7 = mengecek koneksi database dan data yang dimasukan bila sesuai akan berubah. Path = 1-2-6-7 = mengecek koneksi dan data masukan jika tidak sesuai maka maka akan muncul pesan error. Path = 1-2-3-4-1 = mengecek masukan dan menjalankan fungsi update database muncul kotak dialog konfirmasi jika yes berarti data akan di update dan jika no data tidak akan di update dan kembali ke form input data.
5. Pengujian Fungsi Delete Pada pengujian ini akan menampilkan kode program dan alur yang terjadi pada proses Delete di aplikasi gudang PT. Asama Indonesia. Fungsi ini digunakan untuk menghapus data di database. Pengujian ini juga mewakili fungsi Delete di menu Customer, Casting, Machining karena yang membedakan hanya nama variabel dan nama tabel database saja. Tabel 4.36 Pengujian White Box Fungsi Delete 1 2 3 4 String id = No.getText(); try { String message = "Hapus Data Ini"; int baris = JOptionPane.showConfirmDialog(null, message, "Konfirmasi Hapus Data", JOptionPane.YES_NO_OPTION); if(baris == 0){ String sql = "Delete from part where No = '"+id+"'"; StmPart.executeUpdate(sql); StmPart.close(); JOptionPane.showMessageDialog(null, "Hapus Data Berhasil"); 5 No.setText(""); InputKodeBarang.setText(""); InputNamaBarang.setText(""); bacaDataPart(); } No.setText(""); 6 InputKodeBarang.setText(""); InputNamaBarang.setText(""); }catch(SQLException e){
JOptionPane.showMessageDialog(null, e); 8 } }
Gambar 4.27 Pengujian White Box Fungsi Delete V(G) = E-N+2 = 9-8+2 = 3 V(G) = R+1 = 2+1 = 3 V(G) = P+1 =2+1 =3 Path = 1-2-3-4-5-6-7 = mengecek koneksi database dan data yang dimasukan bila sesuai akan terhapus. Path = 1-2-7-8 = mengecek koneksi dan data masukan jika tidak sesuai maka maka akan muncul pesan error. Path = 1-2-3-4-1 = mengecek masukan dan menjalankan fungsi delete database muncul kotak dialog konfirmasi jika yes berarti data akan di hapus dan jika no data tidak akan di hapus dan kembali ke form input data. 4.6 Evaluasi Pelanggan Aktifitas ini diperlukan untuk mendapatkan umpan balik berdasarkan evaluasi representasi perangkat lunak yang dihasilkan dari proses rekayasa dan
diimplementasikan pada tahap instalasi. Pada tahap ini penulis melakukan pengetesan aplikasi di depan petugas gudang dan departemen PPIC di PT. Asama Indonesia guna mendapatkan kritik dan sran serta guna mengetahui kekurangan aplikasi agar bisa dilakukan perbaikan sesuai kebutuhan petugas gudang di PT. Asama Indonesia.
Gambar 2.28 login Menu login berfungsi sebagai verifikasi user jika pengguna merupakan operator PPIC maka akan dibawa ke menu PPIC. Jika operator casting dan machining maka akan dibawa ke menu masing-masing bagian setelah login valid.
Menu utama berfungsi sebagai jalan pintas untuk fungsi yang lain seperti casting, machining, control tag , part, dan customer. Gambar menu diatas adalah gambar dari menu untuk PPIC yang bisa mengakses semua data dan fungsi aplikasi.
Gambar 2.29 Part Menu part berfungsi untuk memasukan data part yang ada di gudang. Data yang dimasukan meliputi kode part, nama part, customer, bagian, standar palet dan stok yang ada saat ini. Terdapat beberapa tombol seperti simpan, update, refresh, hapus, print, dan keluar.
Gambar 2.29 Customer Menu customer berfungsi untuk memasukan data customer yang bekerjasama dengan perusahaan. Data yang dimasukan meliputi kode part, nama part, alamat, bagian,. Terdapat beberapa tombol seperti simpan, update, refresh, hapus, dan keluar.
Menu Control Tag berfungsi untuk memasukan data casting dan machining untuk disimpan sebagai stok barang atau barang yang keluar.
Gambar 2.31 Menu Casting Menu Casting digunakan oleh operator casting membuat control tag dan laporan serta input data casting. Setelah control tag dibuat akan diteruskan ke PPIC untuk disimpan di stok barang.
Gambar 2.32 Casting Casting digunakan oleh operator casting untuk membuat data casting dan disimpan ke database casting. Dari form casting ini bisa dibuat control tag casting yang nantinya akan diteruskan ke PPIC.
Menu Machining digunakan oleh operator machining membuat control tag dan laporan serta input data machining. Setelah control tag dibuat akan diteruskan ke PPIC untuk disimpan di stok barang.
Gambar 2.34 Machining Machining digunakan oleh operator machining untuk membuat data machining dan disimpan ke database machining. Dari form machining ini bisa dibuat control tag machining yang nantinya akan diteruskan ke PPIC. 4.6.1 Angket Tanggapan Berdasarkan hasil dari analisis kebutuhan, desain dan perancangan, serta pembuatan kode program dan implementasi maka aplikasi aplikasi inventory barang menggunakan metode barcode ini mendapat tanggapan yang baik dari operator sebagai user dari aplikasi ini. Adapun bentuk tanggapan dari operatot ditunjukan dalam bentuk angket tentang aplikasi .