bab iii pembahasan · 22 mekanik melakukan seluruh perintah yang diperintahkan oleh chief mekanik....

85
19 BAB III PEMBAHASAN 3.1. Tinjauan Perusahaan Tinjauan perusahaan dilakukan untuk mendapatkan gambaran terhadap PT.Subur Plus Motor Yamaha meliputi sejarah perusahaan, struktur organisasi dan masing-masing fungsi organisasi. 3.1.1. Sejarah Perusahaan Sejak didirikan pada bulan September 2006 di Jl.Pangkal perjuangan No.8 Bypass Karawang oleh Bapak William Wijaya atau yang lebih dikenal dengan nama ko oten. PT.Subur Plus Motor adalah dealer sepeda motor Yamaha. Perusahaan yang bergerak dibidang penjualan, service dan sparepart sepeda motor Yamaha ini semakin berkembang seiring dengan tumbuhnya pasar sepeda motor di Indonesia khususnya Jawa Barat. Pada tahun 2008 perusahaan ini mulai membuka cabang dibeberapa tempat didaerah karawang dan sekitarnya. Saat ini PT.Subur Plus Motor memiliki 3 jaringan 3S dan 2 jaringan 2S yang tepatnya berada di By Pass, Teluk Jambe, Rengasdengklok, Cikampek dan Indramayu. Gambar III.1. Logo Perusahaan

Upload: others

Post on 29-Jan-2021

8 views

Category:

Documents


0 download

TRANSCRIPT

  • 19

    BAB III

    PEMBAHASAN

    3.1. Tinjauan Perusahaan

    Tinjauan perusahaan dilakukan untuk mendapatkan gambaran terhadap PT.Subur

    Plus Motor Yamaha meliputi sejarah perusahaan, struktur organisasi dan masing-masing

    fungsi organisasi.

    3.1.1. Sejarah Perusahaan

    Sejak didirikan pada bulan September 2006 di Jl.Pangkal perjuangan No.8

    Bypass Karawang oleh Bapak William Wijaya atau yang lebih dikenal dengan nama ko

    oten. PT.Subur Plus Motor adalah dealer sepeda motor Yamaha. Perusahaan yang

    bergerak dibidang penjualan, service dan sparepart sepeda motor Yamaha ini semakin

    berkembang seiring dengan tumbuhnya pasar sepeda motor di Indonesia khususnya

    Jawa Barat. Pada tahun 2008 perusahaan ini mulai membuka cabang dibeberapa tempat

    didaerah karawang dan sekitarnya. Saat ini PT.Subur Plus Motor memiliki 3 jaringan 3S

    dan 2 jaringan 2S yang tepatnya berada di By Pass, Teluk Jambe, Rengasdengklok,

    Cikampek dan Indramayu.

    Gambar III.1. Logo Perusahaan

  • 20

    3.1.2. Struktur Organisasi dan Fungsi

    Sumber : Bagian ADH PT.Subur Plus Motor Yamaha Karawang

    Gambar III.2. Struktur Organisasi

    Struktur organisasi merupakan suatu hubungan dan sususanantara tiap

    bagian dan serta posisi yang ada pada suatu organisasi atau perusahaan dalam

    menjalankan kegiatan operasional untuk mencapai tujuan tertentu. Struktur

    organisasi menggambarkan dengan yang lainnya. Bagan organisasi hanya dapat

    menunjukkan hubungan wewenang yang formal, dan tidak dapat

    menggambarkan seberapa besar wewenang,tanggung jawab dan deskripsi

    pekerjaan yang terperinci.

    Struktur organisasi pada perusahaan ini masih terbilang sederhana, tidak

    serumit perusahaan-perusahaan besar pada umumnya. Perusahaan ini memiliki

  • 21

    tujuh belas total pegawai. Adapun rincian fungsi dari struktur organisasinya yaitu

    sebagai berikut:

    1. Owner

    Owner perusahaan berfungsi sebagai penanggug jawab penuh dilingkungan

    perusahaan serta pengawas bagi kegiatan yang berjalan diperusahaan dan

    menerima semua laporan keuangan bengkel setiap bulannya.

    2. PIC Area

    PIC Area atau kepala area bertanggung jawab sepenuhnya atas semua cabang

    PT.Subur Plus Yamaha tentang Target Bengkel maupun tentang Penjualan

    Unit Serta mengoptimalkan sumber daya yang ada dalam usaha pencapaian

    target.

    3. Admin Head & Accounting

    Admin Head & Accounting bertanggung jawab atas semua kegiatan admin,

    Bengkel dan mengatur semua keuangan yang ada di PT.Subur Plus Yamaha.

    4. PIC Cabang

    PIC Cabang bertanggung jawab setiap target penjualan dan aktivitas di

    cabannya masing – masing.

    5. Chief Mekanik

    Chief Mekanik Berfungsi menerima kendaraan yang akan di service,

    memberikan bimbingan teknis kepada para mekanik yang dibawahinnya

    dalam melakukan perbaikan kendaraan, memberikan petunjuk penggunaan

    atau perawatan perlengkapan bengkel.

    6. Mekanik

  • 22

    Mekanik melakukan seluruh perintah yang diperintahkan oleh Chief mekanik.

    Dimana ia hanya mengerjakan job description dan tidak boleh melakukan

    pekerjaan lain mesti komponen system yang lain ada yang rusak. Tetapi jika

    ada yang lain menyangkut dengan kualitas yang nantinya akan diperoleh

    terhadap hasil suatu servisan maka mekanik perlu mengkonsultasikan dengan

    Chief Mekanik.

    7. Counter Service & Kasir

    Counter Service bertugas melayani kebutuhan pelanggan, Mendengarkan

    setiap keluhan pelanggan dan mendiagnosa kerusakan kendaraan berdasarkan

    pengamatan dikendaraan. Menerima complain dari pelanggan yang kurang

    puas atau kecewa. Sebagai penerjemah bahasa teknis dari chief Mekanik ke

    bahasa awam. Memberikan keterangan teknis mengenai perbaikan yang

    diperlukan kepada pelanggan atau memberikan alasan terhadap complain yang

    ada dan memberitahu informasi jika sparepart sedang kosong.

    8. Admin PO (Purchase Order)

    Admin PO bertugas membuat order pembelian barang berdasarkan permintaan

    pembelian barang dari Yamaha.

    9. Admin Faktur dan OJ

    Admin Faktur bertanggung jawab mengenai stock Barang yang ada di Dealer.

    10. Admin STNK & BPKB

    Seseorang yang bertanggung jawab mengenai pelayanan surat-surat kendaraan

    sepeda motor yang dijual.

    11. Sales Counter

  • 23

    Bertugas melayani customer yang datang ke dealer untuk menanyakan

    informasi seputar tentang Unit yang di pasarkan oleh PT.Subur Plus Yamaha.

    3.2. Tinjauan Kasus

    Untuk merancang sebuah sistem yang baik dan sesuai dengan hasil yang

    diharapkan, maka terlebih dahulu harus diperoleh data atau informasi tentang sistem

    yang sedang berjalan pada perusahaan. Analisa sistem merupakan tahap penting sebelum

    memasuki tahap selanjutnya, apabila pada tahap ini terjadi kesalahan maka tahap

    selanjutnya sudah dipastikan akan terjadi kesalahan. Tujuan dari sistem rancang bangun

    ini secara garis besar adalah untuk menghasilkan bentuk rancang bangun yang dapat

    memenuhi kebutuhan akan penyelesaian masalah secara tepat dan benar.

    Perusahaan adalah suatu organisasi yang didirikan oleh seseorang atau

    sekelompok orang atau badan lain yang kegiatannya adalah melakukan produksi dan

    distribusi untuk memenuhi kebutuhan ekonomis manusia. Dalam perusahaan tidak

    hanya memiliki satu prosedur saja, melainkan memiliki beberapa prosedur yang berbeda

    disetiap bagiannya. Seperti halnya pada PT.Subur Plus Yamaha karawang yang bergerak

    dibidang penjualan dan jasa pelayanan pemeliharaan (service) kendaraan sepeda motor

    roda dua. Pada perusahaan tersebut memiliki beberapa prosedur diantaranya adalah

    kegiatan penerimaan jasa service serta penjualan spare part.

    Proses penjualan dan pendapatan jasa service dimulai dari pelanggan melakukan

    service kendaraan sepeda motor dan dilanjutkan ke bagian chief mekanik untuk

    dilakukan pengecekkan kendaraan. Namun terdapat permasalahan pada bagian

    administrasi dimana kurang diperhatikannya dalam pengolahan data-data transaksi yang

    membuat proses pembuatan laporan harus memakan waktu yang cukup lama karena

  • 24

    harus merekap kembali data-data transaksi tersebut menjadi sebuah laporan setiap

    harinya.

    3.2.1 Proses Sistem Berjalan

    1. Prosedur pemesanan barang

    Customer datang langsung ke dealer PT. Subur Plus Yamaha dengan membawa

    kartu keluarga, kemudian customer memesan barang ke bagian penjualan.

    Bagian penjualan mengecek barang ke buku stok, jika barang yang dipesan ada,

    maka bagian penjualan membuatkan surat pesanan tiga rangkap, warna putih

    untuk bagian gudang, kuning untuk customer, merah untuk diarsipkan.

    2. Prosedur pengajuan perjanjian kredit

    Bagian penjualan mengisi formulir permohonan pembiayaan individu dari data

    Kartu keluarga, KTP dan SP merah customer, lalu mengajukan proses kredit ke

    subur plus . kemudian subur plus memberikan kabar approve dengan

    mengeluarkan Purchase Order (PO) di berikan ke bagian penjualan.

    3. Prosedur pembayaran uang muka

    Setelah PO di keluarkan, customer bias langsung membayar uang muka ke

    bagian penjualan dan PO di arsip. Bagian penjualan membuatkan kwitansi

    rangkap dua, kwitansi putih di berikan ke bagian customer dan kwitansi merah

    untuk di arsipkan.

    4. Prosedur pengiriman barang

    Berdasarkan SP (Surat Pesanan) yang di terima oleh bagian gudang, maka bagian

    gudang membuatkan surat jalan dan menyiapkan barang pesanan. Lalu surat

    jalan dan barang pesanan di cek berdasarkan data kwitansi merah oleh bagian

  • 25

    penjualan, setelah sesuai maka barang pesanan dan surat jalan di berikan ke

    customer, setelah di tandatangani oleh customer, surat jalan warna merah untuk

    costumer dan surat jalan warna putih untuk di arsipkan.

    5. Proses pembuatan laporan

    Bagian penjualan membuat laporan penjualan berdasarkan data surat jalan putih

    dan data kwitansi merah, setelah data lengkap maka bagian penjualan membuat

    laporan penjualan bulanan untuk di serahkan kepada manager.

  • 26

    3.2.2 Activity diagram

    Activity Sistem Berjalan

    Customer Bagian Penjualan Subur Plus Manager

    Phas

    e

    memesan danmenyerahkan ktpdan krtu keluarga

    Menerima KartuKeluarga

    Mengecek BarangDibuku Stok

    Membuat danMenyerahkan Surat

    Pesanan

    MengisiPermohonanPembiayaan

    Individu

    MenyerahkanPermohonanPembiayaan

    Individu

    MenerimaPermohonanPembiayaan

    Individu

    Purchase OrderMenerima Purchase

    OrderMembayar Uang

    Muka

    Membuat Kwotasi

    Membuat Laporan

    MenyerahkanLaporan

    Menerima Laporan

    END

    Tidak

    approve

    Tidak

    START

    Gambar III.3 Activity Diagram

  • 27

    3.2.3 Dokumen Masukan

    1 Nama arus data : KTP

    Alias : Kartu Tanda Penduduk

    Fungsi : syarat pemesanan barang

    Tujuan : bagian penjualan

    Media : keretas

    Jumlah : satu lembar

    Frekuensi : setiap terjadi pemesanan barang

    Bentuk : lampiran A.1

    2. Nama arus data : Kartu Keluarga

    Alias : Kartu Keluarga

    Fungsi : syarat pemesanan barang

    Tujuan : bagian penjualan

    Media : keretas

    Jumlah : satu lembar

    Frekuensi : setiap tejadi pemesanan barang

    Bentuk : lampiran A.2

    3. Nama arus data : PO

    Alias : Purchase Order

    Fungsi : tanda approve data customer

    Tujuan : bagian penjualan

    Media : keretas

    Jumlah :satu lembar

  • 28

    Frekuensi : setiap terjadi pemesanan barang

    Bentuk : lampiran A.3.

    4. Nama arus data : Data Stok

    Alias : data stok

    Fungsi : untuk mengetahui stok barang

    Tujuan : bagian penjualan

    Media : keretas

    Jumlah : satu buku

    Frekuensi : setiap terjadi pemesanan

    Bentuk : lampiran A.4

    3.2.4 Dokumen Keluaran

    Dokumen keluaran adalah segala bentuk dokumen perusahaan berupa

    dokumen-dokumen yang akan mendukung kegiatan manajemen serta merupakan

    dokumen hasil pencatatan atau laporan. Adapun dokumen-dokumen keluaran

    tersebut adalah sebagai berikut :

    1. Nama arus data : Kwitansi Pembayaran

    Alias : Kwitansi Pembayaran

    Fungsi : sebagai bukti pembayaran motor

    Tujuan : customer

    Media : keretas

    Jumlah : dua lembar

    Frekuensi : setiap ada transaksi penjualan

    Bentuk : lampiran B.1

  • 29

    2. Nama arus data : Laporan Penjualan

    Alias : Laporan Penjualan

    Fungsi : untuk mengetahui penjualan motor di customer

    Tujuan : manager

    Media : keretas

    Jumlah : dua lembar

    Frekuensi : setiap terjadi closing counter perbulan

    Bentuk : lampiran B.2.

    3. Nama arus data : Surat Jalan

    Alias : Surat Jalan

    Fungsi : untuk pengiriman motor

    Tujuan : customer

    Media : keretas

    Jumlah : dua lembar

    Frekuensi : setiap terjadi permintaan barang

    Bentuk : lampiran B.3

    4. Nama arus data : Surat Pesanan

    Alias : Surat Pesanan

    Fungsi : untuk bukti pemesanan

    Tujuan : customer

    Media : keretas

    Jumlah : dua lembar

    Frekuensi : setiap terjadi pemesanan barang

  • 30

    Bentuk : lampiran B.4

    3.2.5. Permasalahan Pokok

    1. Memungkinkan adanya kesalahan dalam pemesanan barang yang sedang dipesan

    pelanggan.

    2. Tidak adanya pencarian data barang sehingga setiap ada pemesanan, harus dicek

    terlebih dahulu kepastian barangnya

    3. Dokumen dari transaksi penjualan yang diarsip secara manual rawan hilang

    ataupun rusak menyebabkan ketidak sesuaian dalam penyususnan laporan

    penjualan.

    3.2.6. Pemecahan Masalah

    1. Dengan menggunakan program yang dibuat khusus untuk transaksi penjualan

    perusahaan diharapkan dapat mempermudah pencatatan serta dapat megurangi

    kesalahan saat pemesanan barang.

    2. Dengan mengggunakan program, barang yang akan dipesan dapat dengan

    mudah dicek terlebih dahulu ketersediaannya.

    3. Dengaan menggunakan program, transaksi yang berhasil dapat disimpan

    kedalam basisdata sehingga terhindar dari resiko dokumen hilang ataupun rusak

    sehingga memudahkan dalam penyusunan laporan.

    3.3. Analisa Kebutuhan Software

    3.3.1. Analisa Kebutuhan

    Berikut ini adalah analisa kebutuhan pengguna terhadap sistem penjualan.

    1. Analisa Kebutuhan Admin

    A. Admin Melakukan Login

  • 31

    B. Admin Mengakses Menu Utama

    C. Admin Mengakses Menu Master

    1. Admin Mengelola Menu Pengguna

    2. Admin Mengelola Menu Pelanggan

    3. Admin Mengelola Menu Barang

    4. Admin Mengelola Menu Akun

    D. Admin Mengakses Menu Transaksi

    1. Admin Mengelola Menu Sales Order

    2. Admin Mengelola Menu Surat Jalan

    3. Admin Mengelola Menu Tagihan

    4. Admin Mengelola Menu Jurnal

    E. Admin Mengakses Menu Laporan

    1. Admin Mengelola Menu Laporan Penjualan

    F. Admin Melakukan Logout

    2. Analisa Kebutuhan Pemilik

    A. Pemilik Melakukan Login

    B. Pemilik Mengakses Menu Utama

    C. Pemilik Mengakses Menu Laporan

    1. Pemilik Membuka Menu Laporan Penjualan

    E. Pemilik Melakukan Logout

  • 32

    3.3.2. Usecase Diagram

    1. Analisa Kebutuhan Admin

    A. Admin Melakukan Login

    Gambar III.4.Use Case Menu Login

    Tabel III.1.Deskripsi Use Case Menu Login

    Use Case Narative Menu Login

    Tujuan Melakukan login dan masuk kedalam sistem penjualan

    DeskripsiSistem ini memungkinkan aktor untuk mengakses sistempenjualan

    Skenario Utama

    Aktor Admin

    Kondisi awal Aktor membuka aplikasi penjualan

    Aksi Aktor Reaksi Sistem1. Aktor memilih

    tombol login2. Aktor memilih

    tombol batal

    Sistem akan menampilkan texbox untuk mengisi kodeuser dan passwordSistem akan membatalkan proses dan keluar dari aktivitas

    Kondisi AkhirJika perintah sesuai maka sistem akan masuk kedalamaplikasi penjualan

  • 33

    B. Admin Mengakses Menu Utama

    Gambar III.5.Use Case Menu Utama

    Tabel III.2.Deskripsi Use Case Menu Utama

    Use Case Narative Menu Utama

    TujuanMelakukan pengolahan data yang ada di submenumaster, submenu transaksi, dan submenu laporan

    DeskripsiSistem ini memungkinkan aktor untuk mengelolasistem penjualan mulai dari input data sampai denganpembuatan laporan

    Skenario UtamaAktor Admin

    Kondisi AwalAktor membuka aplikasi penjualan dan masuk kemenu utama

    Aksi Aktor Reaksi Sistem1. Aktor memilih tombol

    menu masterSistem ini menampilkan submenu master seperti datapengguna, data barang, data pelanggan dan data akun

  • 34

    2. Aktor memilih tombolmenu transaksi

    3. Aktor memilih tombolmenu laporan

    4. Aktor memilih tombolLogout

    Sistem ini menampilkan submenu transaksi sepertisubmenu transaksi sales order, surat jalan, tagihan,dan jurnal

    Sistem akan menampilkan submenu laporanpenjualan

    Sistem akan menampilkan pesan untuk keluar darisystem

    Kondisi AkhirJika perintah sesuai maka sistem akan menampilkanseperti yang diinginkan oleh actor

    C. Admin Mengakses Menu Master

    Gambar III.6.Use Case Menu Master

  • 35

    Tabel III.3.Deskripsi Use Case Menu Master

    Use Case Narative Menu Master

    TujuanMelakukan pengolahan data yang ada di menumaster

    DeskripsiSistem ini memungkinkan aktor untuk mengelolasistem penjualan mulai dari input data pengguna,data barang, data pelanggan dan data akun

    Skenario Utama

    Aktor Admin

    Kondisi AwalAktor membuka aplikasi penjualan dan masuk kemenu master

    Aksi Aktor Reaksi Sistem

    1. Aktor memilihsubmenu pengguna

    2. Aktor memilihsubmenu barang

    3. Aktor memilihsubmenu pelanggan

    4. Aktor memilihsubmenu akun

    Sistem ini menampilkan submenu pengguna

    Sistem ini menampilkan submenu barang

    Sistem ini menampilkan submenu pelanggan

    Sistem ini menampilkan submenu akun

    Kondisi AkhirJika perintah sesuai maka sistem akan menampilkanseperti yang diinginkan oleh aktor

  • 36

    D. Admin Mengakses Menu Transaksi

    Gambar III.7.Use Case Menu Transaksi

    Tabel III.4.Deskripsi Use Case Menu Transaksi

    Use Case Narative Menu Transaksi

    TujuanMelakukan pengolahan data yang ada di menutransaksi

    DeskripsiSistem ini memungkinkan aktor untuk mengelolasistem penjualan mulai dari transaksi sales order,surat jalan, tagihan dan jurnal

    Skenario Utama

    Aktor Admin

    Kondisi AwalAktor membuka aplikasi penjualan dan masuk kemenu transaksi

  • 37

    Aksi Aktor Reaksi Sistem

    1. Aktor memilihsubmenu sales order

    2. Aktor memilihsubmenu surat jalan

    3. Aktor memilihsubmenu tagihan

    4. Aktor memilihsubmenu jurnal

    Sistem ini menampilkan submenu sales order

    Sistem ini menampilkan submenu surat jalan

    Sistem ini menampilkan submenu tagihan

    Sistem ini menampilkan submenu jurnal

    Kondisi AkhirJika perintah sesuai maka sistem akan menampilkanseperti yang diinginkan oleh aktor

    E. Admin Mengakses Menu Laporan

    Gambar III.8.Use Case Menu Laporan

  • 38

    Tabel III.5.Deskripsi Use Case Menu Laporan

    Use Case Narative Menu Laporan

    TujuanMelakukan pengolahan data yang ada di menulaporan

    DeskripsiSistem ini memungkinkan aktor untuk mengaksslaporan penjualan

    Skenario Utama

    Aktor Admin

    Kondisi AwalAktor membuka aplikasi penjualan dan masuk kemenu laporan

    Aksi Aktor Reaksi Sistem

    1. Aktor memilihsubmenu laporanpenjualan

    Sistem ini menampilkan submenu laporan penjualan

    Kondisi AkhirJika perintah sesuai maka sistem akan menampilkanseperti yang diinginkan oleh actor

    F. Admin Melakukan Logout

    Gambar III.9.Use Case Menu Logout

  • 39

    Tabel III.6.Deskripsi Use Case Menu Logout

    Use Case Narative Menu Logout

    Tujuan Melakukan Logout dan keluar dari sistem penjualan

    DeskripsiSistem ini memungkinkan aktor untuk menutup sistempenjualan

    Skenario Utama

    Aktor Admin

    Kondisi awal Aktor belum melakukan logout

    Aksi Aktor Reaksi Sistem

    1. Aktor memilihtombol Logout

    2. Aktor memilihtombol batal

    Sistem akan menampilkan messagebox untuk mengkonfirmasiapakah akan keluar dan tekan yes

    Sistem akan membatalkan proses logout dengan menekan nodan tetap didalam aplikasi

    Kondisi AkhirJika perintah sesuai maka sistem akan smenutup aplikasipenjualan dan kembali ke menu login

    2. Analisa Kebutuhan Pemilik

    A. Pemilik Melakukan Login

    Gambar III.10.Use Case Menu Login

  • 40

    Tabel III.7.Deskripsi Use Case Menu Login

    Use Case Narative Menu Login

    Tujuan Melakukan login dan masuk kedalam sistem penjualan

    DeskripsiSistem ini memungkinkan aktor untuk mengakses sistempenjualan

    Skenario Utama

    Aktor Pemilik

    Kondisi awal Aktor membuka aplikasi penjualan

    Aksi Aktor Reaksi Sistem3. Aktor memilih

    tombol login4. Aktor memilih

    tombol batal

    Sistem akan menampilkan texbox untuk mengisi namapengguna dan passwordSistem akan membatalkan proses dan keluar dari aktivitas

    Kondisi AkhirJika perintah sesuai maka sistem akan masuk kedalamaplikasi penjualan

    B. Pemilik Mengakses Menu Utama

    Gambar III.11.Use Case Menu Utama

  • 41

    Tabel III.8.Deskripsi Use Case Menu Utama

    Use Case Narative Menu Utama

    Tujuan Mengakses menu yang ada di menu utama pemilik

    DeskripsiSistem ini memungkinkan aktor untuk mengaksessistem penjualan tertama menu laporan

    Skenario Utama

    Aktor Pemilik

    Kondisi AwalAktor membuka aplikasi penjualan dan masuk kemenu utama

    Aksi Aktor Reaksi Sistem

    C. Pemilik Mengakses Menu Laporan

    Gambar III.12.Use Case Menu Laporan

  • 42

    Tabel III.9.Deskripsi Use Case Menu Laporan

    Use Case Narative Menu Laporan

    TujuanMelakukan pengolahan data yang ada di menulaporan

    DeskripsiSistem ini memungkinkan aktor untuk mengaksslaporan penjualan

    Skenario Utama

    Aktor Pemilik

    Kondisi AwalAktor membuka aplikasi penjualan dan masuk kemenu laporan

    Aksi Aktor Reaksi Sistem

    1. Aktor memilihsubmenu laporanpenjualan

    Sistem ini menampilkan submenu laporan penjualan

    Kondisi AkhirJika perintah sesuai maka sistem akan menampilkanseperti yang diinginkan oleh actor

    E. Pemilik Melakukan Logout

    Gambar III.13.Use Case Menu Logout

  • 43

    Tabel III.10.Deskripsi Use Case Menu Logout

    Use Case Narative Menu Logout

    Tujuan Melakukan Logout dan keluar dari sistem penjualan

    DeskripsiSistem ini memungkinkan aktor untuk menutup sistempenjualan

    Skenario UtamaAktor Pemilik

    Kondisi awal Aktor belum melakukan logout

    Aksi Aktor Reaksi Sistem1. Aktor memilihtombol Logout

    2. Aktor memilihtombol batal

    Sistem akan menampilkan messagebox untuk mengkonfirmasiapakah akan keluar dan tekan yes

    Sistem akan membatalkan proses logout dengan menekan nodan tetap didalam aplikasi

    Kondisi AkhirJika perintah sesuai maka sistem akan smenutup aplikasipenjualan dan kembali ke menu login

    3.3.3. Activity Diagram

    1. Activity Diagram Kebutuhan Admin

    A. Admin Melakukan Login

    Gambar III.14.Activity Diagram Login

  • 44

    B. Admin Mengakses Menu Utama

    Gambar III.15.Activity Diagram Menu Utama

  • 45

    C. Admin Mengakses Menu Master

    Gambar III.16.Activity Diagram Menu Master

  • 46

    D. Admin Mengakses Menu Transaksi

    Gambar III.17.Activity Diagram Menu Transaksi

  • 47

    E. Admin Mengakses Menu Laporan

    Gambar III.18.Activity Diagram Menu Laporan

  • 48

    F. Admin Melakukan Logout

    Gambar III.19.Activity Diagram Menu Logout

    2. Activity Diagram Kebutuhan Pemilik

    A. Pemilik Melakukan Login

    Gambar III.20.

    Activity Diagram Menu Login

  • 49

    B. Pemilik Mengakses Menu Utama

    Gambar III.21.Activity Diagram Menu Utama

  • 50

    C. Pemilik Mengakses Menu Laporan

    Gambar III.22.Activity Diagram Menu Laporan

  • 51

    E. Pemilik Melakukan Logout

    Gambar III.23.Activity Diagram Menu Logout

  • 52

    3.4. Desain

    3.4.1. Entty Relationship Diagram (ERD)

    Gambar III.24.Entity Relationship Diagram (ERD)

  • 53

    3.4.2. Logical Record Structure (LRS)

    Gambar III.25.Logical Record Structure (LRS)

  • 54

    3.4.3. Spesifikasi File

    1. Spesifikasi File Tabel Pengguna

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola data pengguna

    Nama File : pengguna

    Akronim : pengguna.myd

    Tipe File : File Master

    Media File : Harddisk

    Organisasi File : Index Sequental

    Akses File : Random

    Panjang Record : 38 Byte

    Field Key : id_pengguna

    Software : MySQL

    Tabel III..11Spesifikasi File Pengguna

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. Id Pengguna id_pengguna Varchar 3 Primary Key2. Nama Pengguna nm_pengguna Varchar 203. Kata Sandi kt_sandi Varchar 84. Akses Akses Varchar 7

  • 55

    2. Spesifikasi File Tabel Pelanggan

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola data pelanggan

    Nama File : pelanggan

    Akronim : pelanggan.myd

    Tipe File : File Master

    Media File : Harddisk

    Organisasi File : Index Sequental

    Akses File : Random

    Panjang Record : 55 Byte

    Field Key : id_pelanggan

    Software : MySQL

    Tabel III..12Spesifikasi File Pelanggan

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. Id Pelanggan id_pelanggan Varchar 5 Primary Key

    2. Nama Pelanggannm_pelanggan

    Varchar 20

    3. No Telepon no_telp Varchar 154. Email Email Varchar 155 Alamat Alamat Text

    3. Spesifikasi File Tabel Barang

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola data barang

  • 56

    Nama File : barang

    Akronim : barang.myd

    Tipe File : File Master

    Media File : Harddisk

    Organisasi File : Index Sequental

    Akses File : Random

    Panjang Record : 39 Byte

    Field Key : id_barang

    Software : MySQL

    Tabel III..13Spesifikasi File Barang

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. Id Barang id_barang Varchar 5 Primary Key2. Nama Barang nm_barang Varchar 203. Harga Harga Int 114. Jumlah Jumlah smallint 3

    4. Spesifikasi File Tabel Akun

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola data akun

    Nama File : akun

    Akronim : akun.myd

    Tipe File : File Master

    Media File : Harddisk

    Organisasi File : Index Sequental

  • 57

    Akses File : Random

    Panjang Record : 35 Byte

    Field Key : id_akun

    Software : MySQL

    Tabel III..14Spesifikasi File Pengguna

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. Id Akun id_akun Varchar 5 Primary Key2. Nama Akun nm_akun Varchar 203. Jenis Akun jns_akun Varchar 10

    5. Spesifikasi File Tabel Sales Order

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola transaksi sales order

    Nama File : so

    Akronim : so.myd

    Tipe File : File Transaksi

    Media File : Harddisk

    Organisasi File : Index Sequental

    Akses File : Random

    Panjang Record : 37 Byte

    Field Key : no_so

    Software : MySQL

  • 58

    Tabel III..15Spesifikasi File So

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. No Sales Order no_so Varchar 9 Primary Key2. Tanggal Tgl Date3. Id Pengguna id_pengguna Varchar 3 Foreign Key4. Id Pelanggan id_pelanggan Varchar 5 Foreign Key5 No Purchase Order no_po Varchar 20

    6. Spesifikasi File Tabel Detail Sales Order

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola transaksi detail So

    Nama File : detail_so

    Akronim : detail_so.myd

    Tipe File : File Transaksi

    Media File : Harddisk

    Organisasi File : Index Sequental

    Akses File : Random

    Panjang Record : 17 Byte

    Field Key : no_so

    Software : MySQL

    Tabel III..16Spesifikasi File So

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. No Sales Order no_so Varchar 9 Primary Key2. Id Barang id_barang Varchar 5 Foreign Key

  • 59

    3. Jumlah Pesan jml_pesan Smallint 37. Spesifikasi File Tabel Surat Jalan

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola transaksi surat jalan

    Nama File : sj

    Akronim : sj.myd

    Tipe File : File Transaksi

    Media File : Harddisk

    Organisasi File : Index Sequental

    Akses File : Random

    Panjang Record : 21 Byte

    Field Key : no_sj

    Software : MySQL

    Tabel III..17Spesifikasi File Sj

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. No Surat Jalan no_sj Varchar 9 Primary Key2. Tanggal Tgl Date3. Id Pengguna id_pengguna Varchar 3 Foreign Key4. No Sales Order no_so Varchar 9 Foreign Key

    8. Spesifikasi File Tabel Tagihan

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola transaksi tagihan

    Nama File : tagihan

  • 60

    Akronim : tagihan.myd

    Tipe File : File Transaksi

    Media File : Harddisk

    Organisasi File : Index Sequental

    Akses File : Random

    Panjang Record : 21 Byte

    Field Key : no_tag

    Software : MySQL

    Tabel III..18Spesifikasi File Tagihan

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. No Tagihan no_tag Varchar 9 Primary Key2. Tanggal Tgl Date3. Id Pengguna id_pengguna Varchar 3 Foreign Key4. No Sales Order no_so Varchar 9 Foreign Key

    9. Spesifikasi File Tabel Jurnal

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola transaksi jurnal

    Nama File : jurnal

    Akronim : jurnal.myd

    Tipe File : File Transaksi

    Media File : Harddisk

    Organisasi File : Index Sequental

  • 61

    Akses File : Random

    Panjang Record : 21 Byte

    Field Key : no_jurnal

    Software : MySQL

    Tabel III..19Spesifikasi File Jurnal

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. No Jurnal no_jurnal Varchar 9 Primary Key2. Tanggal Tgl Date3. Id Pengguna id_pengguna Varchar 3 Foreign Key4. No Tagihan no_tag Varchar 9 Foreign Key

    10. Spesifikasi File Tabel Detail Jurnal

    Nama Database : db_penjualan

    Fungsi : Digunakan untuk mengelola transaksi detail jurnal

    Nama File : detail_jurnsl

    Akronim : detail_jurnsl.myd

    Tipe File : File Transaksi

    Media File : Harddisk

    Organisasi File : Index Sequental

    Akses File : Random

    Panjang Record : 36 Byte

    Field Key : no_jurnal

    Software : MySQL

  • 62

    Tabel III..20Spesifikasi File So

    No.

    Elemen Data Nama Field Tipe Panjang Keterangan

    1. No Jurnal no_jurnal Varchar 9 Primary Key2. Id Akun id_akun Varchar 5 Foreign Key3. Debet Debet Int 114 Kredit Kredit Int 11

    3.4.4. Sequnce Diagram

    Gambar III.26.Sequence Diagram

  • 63

    3.4.5. Deployment Diagram

    Gambar III.27.

    Deployment Diagram

  • 64

    3.4.6. User Interface

    1. Tampilan Halaman Login

    Gambar III.28.

    Halaman login

    2. Tampilan Mennu utama

    Gambar III.29.

    Halaman menu utama

  • 65

    3. Tampilan Halaman transaksi sales order

    Gambar III.30.

    Halaman transaksi sales order

    4. Tampilan Transaksi Surat Jalan

    Gambar III.31.

    Halaman transaksi surat jalan

  • 66

    5. Tampilan Transaksi Tagihan

    Gambar III.32.

    Halaman transaksi tagihan

    6. Tampilan Halaman Jurnal

    Gambar III.33.

    Halaman Jurnal

  • 67

    3.5. Implementasi

    3.5.1. Code Generation

    1. Laporan Penjualan

  • 68

    tagihan.`no_tag` AS tagihan_no_tag,

    tagihan.`tgl` AS tagihan_tgl,

    tagihan.`id_pengguna` AS tagihan_id_pengguna,

    detail_so.`no_so` AS detail_so_no_so,

    detail_so.`id_barang` AS detail_so_id_barang,

    detail_so.`jml_pesan` AS detail_so_jml_pesan,

    detail_so.`subtotal` AS detail_so_subtotal,

    so.`id_pelanggan` AS so_id_pelanggan,

    so.`no_po` AS so_no_po,

    barang.`nm_barang` AS barang_nm_barang,

    barang.`harga` AS barang_harga,

    pengguna.`nm_pengguna` AS pengguna_nm_pengguna,

    pelanggan.`nm_pelanggan` AS pelanggan_nm_pelanggan

    FROM

    `detail_so` detail_so LEFT OUTER JOIN `tagihan` tagihan ON

    detail_so.`no_so` = tagihan.`no_so`

    RIGHT OUTER JOIN `so` so ON detail_so.`no_so` = so.`no_so`

    RIGHT OUTER JOIN `barang` barang ON detail_so.`id_barang` =

    barang.`id_barang`

    RIGHT OUTER JOIN `pelanggan` pelanggan ON so.`id_pelanggan` =

    pelanggan.`id_pelanggan`

    RIGHT OUTER JOIN `pengguna` pengguna ON tagihan.`id_pengguna` =

    pengguna.`id_pengguna`

  • 69

    WHERE

    month(tagihan.`tgl`) = $P{bulan}

    AND year(tagihan.`tgl`) = $P{tahun}]]>

  • 70

  • 71

  • 72

    java.util.Date()]]>

  • 73

  • 74

  • 75

  • 76

  • 77

  • 78

  • 79

  • 80

  • 81

  • 82

  • 83

  • 84

  • 85

  • 86

    2. Penjualan

    package penjualan;

    import java.sql.ResultSetMetaData;

    import java.sql.SQLException;

    import javax.swing.JOptionPane;

    import javax.swing.table.DefaultTableModel;

    /**

    *

    * @author user

    */

    public class jtbl_brg extends javax.swing.JDialog {

    koneksi kon = new koneksi();

    public home h = null;

    private Object[][] datab = null;

    private String[] labelb = {"ID BARANG", "NAMA", "HARGA",

    "JUMLAH"};

    public jtbl_brg(java.awt.Frame parent, boolean modal) {

    super(parent, modal);

    initComponents();

    kon.setKoneksi();

  • 87

    Bacatbl_b();

    }

    private void Bacatbl_b() {

    try {

    String sql = "Select *From barang where jumlah != 0";

    kon.rs = kon.st.executeQuery(sql);

    ResultSetMetaData m = kon.rs.getMetaData();

    int kolom = m.getColumnCount();

    int baris = 0;

    while (kon.rs.next()) {

    baris = kon.rs.getRow();

    }

    datab = new Object[baris][kolom];

    int x = 0;

    kon.rs.beforeFirst();

    while (kon.rs.next()) {

    datab[x][0] = kon.rs.getString("id_barang");

    datab[x][1] = kon.rs.getString("nm_barang");

    datab[x][2] = kon.rs.getString("harga");

    datab[x][3] = kon.rs.getString("jumlah");

    x++;

    }

    tbl_b.setModel(new DefaultTableModel(datab, labelb));

  • 88

    } catch (SQLException e) {

    JOptionPane.showMessageDialog(null, e);

    }

    }

    private void Bacatbl_bCari() {

    try {

    String sql = "Select *From barang where id_barang like '%"

    +cari_b.getText()+ "%' ||"

    + "nm_barang like '%" +cari_b.getText()+ "%' ";

    kon.rs = kon.st.executeQuery(sql);

    ResultSetMetaData m = kon.rs.getMetaData();

    int kolom = m.getColumnCount();

    int baris = 0;

    while (kon.rs.next()) {

    baris = kon.rs.getRow();

    }

    datab = new Object[baris][kolom];

    int x = 0;

    kon.rs.beforeFirst();

    while (kon.rs.next()) {

    datab[x][0] = kon.rs.getString("id_barang");

    datab[x][1] = kon.rs.getString("nm_barang");

  • 89

    datab[x][2] = kon.rs.getString("harga");

    datab[x][3] = kon.rs.getString("jumlah");

    x++;

    }

    tbl_b.setModel(new DefaultTableModel(datab, labelb));

    } catch (SQLException e) {

    JOptionPane.showMessageDialog(null, e);

    }

    }

    /**

    * This method is called from within the constructor to initialize the form.

    * WARNING: Do NOT modify this code. The content of this method is

    always

    * regenerated by the Form Editor.

    */

    @SuppressWarnings("unchecked")

    //

    private void initComponents() {

    jPanel8 = new javax.swing.JPanel();

    cari_b = new javax.swing.JTextField();

    jLabel26 = new javax.swing.JLabel();

  • 90

    jScrollPane2 = new javax.swing.JScrollPane();

    tbl_b = new javax.swing.JTable();

    setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLO

    SE);

    cari_b.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N

    cari_b.addKeyListener(new java.awt.event.KeyAdapter() {

    public void keyTyped(java.awt.event.KeyEvent evt) {

    cari_bKeyTyped(evt);

    }

    });

    jLabel26.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N

    jLabel26.setText("Pencarian");

    tbl_b.setModel(new javax.swing.table.DefaultTableModel(

    new Object [][] {

    {null, null, null, null},

    {null, null, null, null},

    {null, null, null, null},

    {null, null, null, null}

  • 91

    },

    new String [] {

    "Title 1", "Title 2", "Title 3", "Title 4"

    }

    ));

    tbl_b.addMouseListener(new java.awt.event.MouseAdapter() {

    public void mousePressed(java.awt.event.MouseEvent evt) {

    tbl_bMousePressed(evt);

    }

    });

    jScrollPane2.setViewportView(tbl_b);

    javax.swing.GroupLayout jPanel8Layout = new

    javax.swing.GroupLayout(jPanel8);

    jPanel8.setLayout(jPanel8Layout);

    jPanel8Layout.setHorizontalGroup(

    jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA

    DING)

    .addGroup(jPanel8Layout.createSequentialGroup()

    .addGap(21, 21, 21)

  • 92

    .addComponent(jLabel26,

    javax.swing.GroupLayout.DEFAULT_SIZE,

    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)

    .addComponent(cari_b,

    javax.swing.GroupLayout.PREFERRED_SIZE, 155,

    javax.swing.GroupLayout.PREFERRED_SIZE)

    .addGap(436, 436, 436))

    .addGroup(jPanel8Layout.createSequentialGroup()

    .addContainerGap()

    .addComponent(jScrollPane2)

    .addContainerGap())

    );

    jPanel8Layout.setVerticalGroup(

    jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEA

    DING)

    .addGroup(jPanel8Layout.createSequentialGroup()

    .addGap(20, 20, 20)

    .addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alig

    nment.BASELINE)

  • 93

    .addComponent(jLabel26)

    .addComponent(cari_b,

    javax.swing.GroupLayout.PREFERRED_SIZE,

    javax.swing.GroupLayout.DEFAULT_SIZE,

    javax.swing.GroupLayout.PREFERRED_SIZE))

    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,

    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

    .addComponent(jScrollPane2,

    javax.swing.GroupLayout.PREFERRED_SIZE, 418,

    javax.swing.GroupLayout.PREFERRED_SIZE)

    .addGap(214, 214, 214))

    );

    javax.swing.GroupLayout layout = new

    javax.swing.GroupLayout(getContentPane());

    getContentPane().setLayout(layout);

    layout.setHorizontalGroup(

    layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

    .addGap(0, 695, Short.MAX_VALUE)

  • 94

    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.

    LEADING)

    .addGroup(layout.createSequentialGroup()

    .addContainerGap()

    .addComponent(jPanel8,

    javax.swing.GroupLayout.DEFAULT_SIZE,

    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

    .addContainerGap()))

    );

    layout.setVerticalGroup(

    layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

    .addGap(0, 501, Short.MAX_VALUE)

    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.

    LEADING)

    .addGroup(layout.createSequentialGroup()

    .addContainerGap()

    .addComponent(jPanel8,

    javax.swing.GroupLayout.PREFERRED_SIZE, 479,

    javax.swing.GroupLayout.PREFERRED_SIZE)

  • 95

    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,

    Short.MAX_VALUE)))

    );

    pack();

    setLocationRelativeTo(null);

    }//

    private void cari_bKeyTyped(java.awt.event.KeyEvent evt) {

    Bacatbl_bCari();

    }

    private void tbl_bMousePressed(java.awt.event.MouseEvent evt) {

    int tabel = tbl_b.getSelectedRow();

    h.id_brg_so.setText(tbl_b.getValueAt(tabel, 0).toString());

    h.nm_brg_so.setText(tbl_b.getValueAt(tabel, 1).toString());

    h.hrg_so.setText(tbl_b.getValueAt(tabel, 2).toString());

    this.dispose();

    }

    /**

    * @param args the command line arguments

    */

  • 96

    public static void main(String args[]) {

    /* Set the Nimbus look and feel */

    //

    /* If Nimbus (introduced in Java SE 6) is not available, stay with the

    default look and feel.

    * For details see

    http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

    */

    try {

    for (javax.swing.UIManager.LookAndFeelInfo info :

    javax.swing.UIManager.getInstalledLookAndFeels()) {

    if ("Nimbus".equals(info.getName())) {

    javax.swing.UIManager.setLookAndFeel(info.getClassName());

    break;

    }

    }

    } catch (ClassNotFoundException ex) {

    java.util.logging.Logger.getLogger(jtbl_brg.class.getName()).log(java.util.loggi

    ng.Level.SEVERE, null, ex);

    } catch (InstantiationException ex) {

  • 97

    java.util.logging.Logger.getLogger(jtbl_brg.class.getName()).log(java.util.loggi

    ng.Level.SEVERE, null, ex);

    } catch (IllegalAccessException ex) {

    java.util.logging.Logger.getLogger(jtbl_brg.class.getName()).log(java.util.loggi

    ng.Level.SEVERE, null, ex);

    } catch (javax.swing.UnsupportedLookAndFeelException ex) {

    java.util.logging.Logger.getLogger(jtbl_brg.class.getName()).log(java.util.loggi

    ng.Level.SEVERE, null, ex);

    }

    //

    /* Create and display the dialog */

    java.awt.EventQueue.invokeLater(new Runnable() {

    public void run() {

    jtbl_brg dialog = new jtbl_brg(new javax.swing.JFrame(), true);

    dialog.addWindowListener(new java.awt.event.WindowAdapter() {

    @Override

    public void windowClosing(java.awt.event.WindowEvent e) {

    System.exit(0);

    }

  • 98

    });

    dialog.setVisible(true);

    }

    });

    }

    // Variables declaration - do not modify

    private javax.swing.JTextField cari_b;

    private javax.swing.JLabel jLabel26;

    private javax.swing.JPanel jPanel8;

    private javax.swing.JScrollPane jScrollPane2;

    private javax.swing.JTable tbl_b;

    // End of variables declaration

    }

  • 99

    3.5.2.Blackbox Testing

    1. Pengujian login

    Tabel III.21.Pengujian Menu Login

    1.

    NoSkenarioPengujian

    Hasil YangDiharapkan

    HasilPengujian Kesimpulan

    1

    Mengosongkansemua isian datalogin, kemudianlangsung kliktombol ‘Login’

    Sistem akanmenolak akses logindan menampilkanpesan “Data tidakditemukan !!”

    SesuaiHarapan

    Valid

    2

    Hanya mengisidata kode user,mengosongkandata password,kemudianlangsung kliktombol ‘Login’

    Sistem akanmenolak akses logindan menampilkanpesan “Data tidakditemukan !!”

    SesuaiHarapan

    Valid

    3

    Hanya mengisidata passworddanmengosongkankode user,kemudianlangsung kliktombol ‘Login’

    Sistem akanmenolak akses logindan menampilkanpesan “Data tidakditemukan !!”

    SesuaiHarapan

    Valid

    4

    Menginputkandengan kondisisalah satu databenar dan salahsatu lagi salah,kemudian kliktombol ‘Login’

    Sistem akanmenolak akses logindan menampilkanpesan “Data tidakditemukan !!”

    SesuaiHarapan

    Valid

    5

    Mengisi kodeuser danpassword atausalah satunya,kemudian kliktombol ‘Batal’

    Menampilkaninputan data menjadikosong

    SesuaiHarapan

    Valid

  • 100

    6

    Menginputkandata login yangbenar, kemudianklik tombol‘Login’

    Sistem akanmenerima akseslogin dan munculpesan “SelamatDatang”, lalu masukke menu utama

    SesuaiHarapan

    Valid

    2. Pengujian Menu UtamaTabel III.22.

    Pengujian Menu Utama

    NoSkenario Pengujian

    Hasil YangDiharapkan

    HasilPengujian Kesimpulan

    1Memilih MenuMaster

    Menampilkan submenumaster

    SesuaiHarapan

    Valid

    2Memilih MenuTransaksi

    Menampilkan submenutransaksi

    SesuaiHarapan

    Valid

    3Memilih MenuLaporan

    Menampilkan submenulaporan

    SesuaiHarapan

    Valid

    4Memilih MenuLogout

    Keluar dari aplikasi sisfoSesuai

    HarapanValid

    3. Pengujian Submenu TagihanTabel III.23.

    Pengujian Submenu Tagihan

    No SkenarioPengujian

    Hasil YangDiharapkan

    HasilPengujian

    Kesimpulan

    1Memilihtombol Tambah

    Menampilkan FormInput Data Tagihan

    SesuaiHarapan Valid

  • 101

    2

    Mengisi semuadata secaralengkap danbenarMemilihTombolSimpan

    Menampilkan pesan“Data BrhasilDisimpan !”

    SesuaiHarapan Valid

    3

    Mengisi datatidak lengkapMemilihTombolSimpan

    Menampilkan pesan“Lengkapi Data !”

    SesuaiHarapan

    Valid

    4

    Mengisi datasalahMemilihTombolSimpan

    Menampilkan pesan“Data Salah !”

    SesuaiHarapan

    Valid

    5

    Mengosongkansemua dataMemilih ombol‘Simpan’

    Menampikan pesan“Data Tidak BolehKosong !”

    SesuaiHarapan Valid

    6

    Memasukankode pencariandengan benarMemilihTombol Cari

    Menampikan pesan“Data Ditemukan !”

    SesuaiHarapan

    Valid

  • 102

    7

    Memasukankode pencarianyang salahMemilihTombol Cari

    Menampikan pesan“Data TidakDitemukan !”

    SesuaiHarapan

    Valid

    8

    Memilih datayang akandiubahMemilihTombol Ubah

    Menampilkan pesan“Data BerhasilDiubah!”

    SesuaiHarapan

    Valid

    9

    Memilih datayang akandihapusMemilihTombol Hapus

    Menampilkan pesan“Data BerhasilDihapus!”

    SesuaiHarapan

    Valid

    10

    Keluar dariForm TagihanMemilihTombol Keluar

    Keluar dari FormTagihan

    SesuaiHarapan

    Valid

  • 103

    3.5.3. Spesifikasi Hardware dan Software

    Tabel III.24.Spesifikasi Hardware dan Software

    Kebutuhan Keterangan

    Sistem Operasi Windows 7 Profesional

    Processor Intel (R) Pentium(R) Dual CPU E2160 1.80 Ghz

    RAM 2.00 GB

    Harddisk 232 GB

    Monitor Generic PnP

    Keyboard Standard PS/2

    Mouse Microsoft PS/2

    Printer HP Deskjet 2000 J210 Series

    SoftwareBahasa Pemrograman : JavaAplikasi Pendukung : NetBeans IDE 8.1DBMS : MySQL