## PENERAPAN BAHASA PEMROGRAMAN JAVA DALAM SISTEM INFORMASI PENJUALAN VERSI DESKTOP
Windu Gata 1) , Grace Gata 2)
1) Fakultas Teknologi Informatika, STMIK Nusa Mandiri Jl. Kramat Raya No.25 Jakarta, 10450
2) Program Studi Sistem Informasi, Fakultas Teknologi Informasi, Universitas Budi Luhur Jl. Raya Ciledug, Petukangan Utara, Kebayoran Lama, Jakarta Selatan 12260
e-mail : wgata@martinaberto.co.id 1) , gatasmara@gmail.com 2)

## ABSTRACT
At  this  point  in  each  activity  has  many  facilities  that  use  computers  to  facilitate  the transaction terms, so that the data obtained can be processed properly, and can generate the information needed by top management directly. It can be seen from the use of computerized systems especially for sales activity in which many business owners use a centralized sales system  so  that  from  the  beginning  of  the  transaction  until  the  report  generation  can  be achieved  quickly  and  reliability  in  the  accuracy  of  the  data  more  secure.  With  the  help  of advances  in  information  technology  can  create  an  integrated  system  that  can  assist management  jobs  in  the  business  world.  Information  technology  can  help  save  paper  in archival  storage  for  archival  storage  is  in  the  form  of  files  that  are  packed  in  the  digital media  archives  that  can  last  a  long  time  and  structure.  Change  towards  work-based computerized system that is efficient, so the competition is very tight now requires tools or systems that work easily, fast, precise, accurate, and efficient. This paper will discuss how to make the most frequently used applications for selling using the Java programming language based on the desktop.
Keywords : sales information system, java programming language, system information

## 1. PENDAHULUAN
Kegiatan  sehari-hari    yang  dilakukan dalam suatu aktivitas membutuhkan kinerja yang cepat dan efisien agar seluruh rutinitas  dapat  ditangani  dengan  baik. Penjualan  merupakan  suatu  usaha  yang dilakukan  untuk  memindahkan  suatu produk,  baik  itu  berupa  barang  ataupun jasa  dari  produsen  kepada  konsumen sebagai  sasarannya.  Tujuan  utamadari penjualan adalah mendapatkan keuntungan dari  produk  yag  dihasilkan  produsennya dengan pengelolaan yang baik. Permasalahan  yang  ditimbulkan  dari kegiatan  penjualan  adalah  banyaknya  data yang  harus  diolah  dan  diteliti  agar  saat terjadinya  transaksi  sesuai  dengan  barang yang  dijual  dengan  nominal  yang  tepat berdasarkan  dokumen  penjualan.  Maka diperlukanlah  suatu  teknologi  yang  dapat
membantu  para  pelaku  penjualan  dengan menggunakan sistem informasi terkomputerisasi  yang  tepat,  sehingga dapat menunjang kinerja usaha dalam segi percepatan  pelayanan,  pengawasan  dan pelaporan yang akurat. Pembuatan aplikasi
penjualan dilakukan secara cepat dan mudah dengan menggunakan  perangkat  UML  (Unified Markup  Languange  )  sebagai  alat  dalam melakukan  analisa  alur  sistem  penjualan serta  memudahkan  dalam  pembangunan aplikasi  yang  dibutuhkan  juga  dalam pengembangannya. Menggunakan perangkat lunak bantu ( tools ) berbasis Ms. Windows  ( executable  / .EXE)  yang  dapat digunakan, seperti MYSQL sebagai
database,    Bahasa  JAVA  sebagai  Bahasa Pemrogaman,
NETBEANS sebagai perangkat  editor  bahasa  pemrograman
JAVA,  dan  IREPORT  sebagai  alat  bantu pembuat  laporan.  Lakukanlah  instalasi semua aplikasi tersebut satu persatu, yaitu :  1.  Mysql,  2. Java  Development  Kit (JDK), 3. Netbeans, dan 4. IREPORT. Metode  penelitian  yang  digunakan dalam  menyusun  dan  mengembangkan sistem  dengan  menggunakan  metode Waterfall yang mempunyai tahapan dalam pelaksanaannya, seperti : penentuan definisi,  desain  sistem  dan  software  yang diperlukan,  melakukan  implementasi  dan pengujian, integrasi  dan  pengujian  sistem, pengoperasian  sistem  dan  pemeliharaan agar sistem dapat berjalan dengan maksimal.

## 2. TINJAUAN PUSTAKA
Dalam  melakukan  perancangan  suatu sistem dengan berorientasi obyek membutuhkan alat dalam  pendesainannya, antara lain :

## 2.1 UML
Hasil pemodelan pada OOAD terdokumentasikan  dalam  bentuk Unified
Modeling  Language  (UML) .  UML  adalah bahasa spesifikasi
standar yang
dipergunakan  untuk  mendokumentasikan, menspesifikasikan dan
membangun perangkat lunak. UML merupakan metodologi dalam mengembangkan sistem berorientasi objek dan juga merupakan alat untuk  mendukung  pengembangan  sistem. UML saat ini sangat banyak dipergunakan dalam  dunia  industri  yang  merupakan standar  bahasa  pemodalan  umum  dalam industri perangkat lunak dan pengembangan sistem. Alat  bantu  yang  digunakan  dalam perancangan
berorientasi objek berbasiskan UML adalah sebagai berikut :
2.1.1. Use Case Diagram.
Use  case  Diagram    merupakan pemodelan  untuk  kelakuan  (behavior) sistem  informasi  yang  akan  dibuat.  Use Case  mendeskripsikan  sebuah  interaksi antara satu atau lebih aktor dengan sistem
informasi  yang  akan  dibuat.  Dapat dikatakan  Use  Case  digunakan  untuk mengetahui  fungsi  apa  saja  yang  ada didalam  sistem  informasi  dan  siapa  saja yang  berhak  menggunakan  fungsi-fungsi tersebut.
2.1.2. Diagram Aktivitas (Activity Diagram). Activity diagram menggambarkan workflow (aliran  kerja)  atau  aktivitas  dari sebuah sistem atau proses bisnis.
2.1.3. Diagram Urutan ( Sequence Diagram ) .
Sequence  diagram menggambarkan kelakuan  obyek  pada use  case dengan mendeskripsikan  waktu  hidup  obyek  dan pesan  yang  dikirimkan  dan  diterima  antar obyek.
2.1.4. Class Diagram (Diagram Kelas). Merupakan  hubungan  antar  kelas  dan penjelasan  detail  tiap-tiap  kelas  didalam model  desain  dari  suatu  sistem,  juga memperlihatkan aturan-aturan
dan tanggung  jawab  entitas  yang  menentukan perilaku  sistem. Class  diagram juga menunjukan  atribut-atribut  dan  operasi- operasi  dari  sebuah  kelas  dan constraint yang  berhubungan  dengan  obyek  yang dikoneksikan. Class  diagram secara  khas meliputi:Kelas ( Class ), Relasi, Associations, Generalization dan Aggregation, Atribut (Attributes), Operasi (Operations/Method), dan Visibility , tingkat akses objek eksternal kepada suatu operasi atau atribut. Hubungan antar Kelas mempunyai  keterangan  yang  disebut dengan Multiplicity atau kardinaliti.

## 2.2 JAVA
Java  merupakan  bahasa  pemrograman tingkat  tinggi  yang  dapat  diterapkan  pada banyak  platform.  Bahasa  pemrograman java  mempunyai  ciri  sebagai  bahasa  yang sederhana,  arsitektur  netral  berorientasi obyek,  mempunyai  kinerja  yang  tinggi, multithreaded,  kuat,  dinamis  dan  aman.
Java mempunyai kemampuan dapat berjalan  di  banyak  platform.  Sebuah platform  adalah  perangkat  keras  atau perangkat lunak lingkungan dimana program  berjalan,  seperti  :  Microsoft Windows, Linux, Solaris OS dan Mac OS. Platform  java  mempunyai  dua  komponen, yaitu  :  Java  Virtual  Machine  dan  Java Application Programming Interface (API).

## 2.3 NETBEANS
IDE (Integrated Development
Environment)  untuk  bahasa  pemrograman java  yang  paling  banyak  dipakai  adalah Netbeans.  Mempunyai  banyak  fasilitas yang  disediakan  untuk  mengembangkan aplikasi  berbasis  java.  Mengacu  pada kedua  kerangka  platform  Java  untuk aplikasi destop dan lingkungan
pengembangan terintegrasi
untuk mengembangkan  bahasa  pemrograman java.

## 2.4 IREPORT
Dalam  pembuatan  aplikasi  salah  satu yang dibutuhkan sebagai hasil akhir adalah membuat  laporan  dari  data  yang  diolah. Banyak sekali perangkat bantu yang dapat digunakan  dari  perangkat  yang  berbayar maupun  perangkat  bantu  yang  berlisensi terbuka  atau  yang  sering  disebut  dengan open source .
Dari  sekian  banyak  perangkat  bantu  yang berlisensi  terbuka  terdapat  salah  satu perangkat  bantu  terfavorit  untuk  para pengembang aplikasi, yaitu pustaka JasperReport dan iReport yang berfungsi sebagai  perangkat  bantu  desain  dengan menggunakan pustaka JasperReport.
Dalam  penggunaannya  JasperReport dan  iReport  seringkali  digunakan  oleh pengembang  aplikasi  berbasis  Java,  tetapi banyak sekali pengembang aplikasi
berbasis Web seperti pengembang aplikasi yang  menggunakan  bahasa  pemrograman PHP turut menggunakannya dalam pembuatan laporan.
JasperReport menggunakan XML sebagai  dasar  dalam  melakukan  desain,
sedangkan hasil dari desain tersebut dapat disimpan  dalam  bentuk  HTML,  PDF, Excell, Word, dan OpenOffice.

## 2.5 PENJUALAN
Penjualan  adalah  Keberhasilan  suatu perusahaan pada umumnya dinilai berhasil dilihat dari kemampuannya dalam memperoleh  laba.  Dengan  laba  yang diperoleh, perusahaan akan dapat
mengembangkan  dan  memperluas  bidang usahanya. Untuk mencapai tujuan tersebut, perusahaan  mengandalkan  kegiatannya dalam  bentuk  penjualan,  semakin  besar volume penjualan semakin besar pula laba yang akan diperoleh perusahaan. Perusahaan  pada  umumnya  mempunyai tiga tujuan dalam penjualan yaitu
mencapai volume penjualan,  mendapatkan laba
tertentu, dan menunjukkan pertumbuhan perusahaan.

## 3. PEMBAHASAN
3.1 Perancangan Sistem
Deskripsi  bisnisi  proses  yang  dibahas melingkupi  :  1.  Proses  Update  Master, yaitu  Fakturis  melakukan  proses  update master  dan  update  master  barang  dengan cara melakukan proses update barang yang bersifat kapan saja bisa dilakukan
perubahan.  2.  Proses  Penjualan,  yaitu Pelanggan akan datang melakukan pembelian  barang  yang  dijual,  kemudian data  tersebut  dientri  oleh  Fakturis  ke dalam proses penjualan, selanjutnya dalam setiap  aktivitas  penjualan  tersebut  dicetak suatu  faktur  oleh  fakturis  sebagai  bukti barang  yang  akan  diserahkan  kepada pelanggan.  3.  Proses  pembayaran  yaitu Selanjutnya  pelanggan  akan  melakukan pembayaran  barang  di  kasir,  jika  sudah melunasi  barang tersebut  maka  kasir akan mencetak kwitansi sebagai bukti pelunasan barang yang diberikan ke pelanggan.

## 3.1.1 Use Case
Pembuatan  Use  Case  berdasarkan  dari alur  proses  bisnis  yang  sudah  dianalisa sehingga dapat digambarkan
menggunakan  Diagram Use  Case seperti pada gambar 1.
Gambar 1. Use Case Penjualan
Untuk lebih jelasnya mengenai gambar tersebut adalah sebagai berikut :Terdapat 3 Aktor,  yaitu  Fakturis,  Pelanggan,  dan Kasir, Fakturis berhubungan secara langsung  ke  pada  case  Update  Data, sehingga Fakturis dapat melakukan pemuktahiran data Barang dan Pelanggan, Pelanggan  (berhubungan  tidak  langsung) dapat  meminta  fakturis  (yang  melakukan operasi komputer) untuk melakukan pemasukan data penjualan sekaligus melakukan pencetakan Faktur.
Berdasarkan  faktur  yang  didapatkan  oleh Pelanggan,  maka  pelanggan  melakukan pembayaran  ke  Kasir  dan  mendapat Kwitansi yang dicetak oleh Kasir.

## 3.1.2 Class Diagram
Kelas yang terbentuk dari hasil analisa pada  proses  bisnis  penjualan  adalah sebagai berikut :

## Gambar 2.  Diagram Kelas Penjualan
Penjelasan  gambar  2  tersebut  diatas adalah : Pelanggan boleh tidak melakukan pembelian atau melakukan pembelian satu kali  atau  sebanyak  mungkin.  Sedangkan dalam  faktur  harus  terisi  kode  pelanggan, Faktur  tidak  akan  tercatat  dalam  kwitansi apabila  belum  melakukan  pembayaran, tetapi  akan  tercatat  pada  kwitansi  setelah melakukan pembayaran. Sedangkan dalam Kwitansi  haruslah  tercatat  NomorFaktur. Id  pada  FakturDetail  merupakan  kunci,
FakturDetail merupakan Agregrasi Komposit  (Faktur  memiliki  FakturDetail atau  FakturDetail  tidak  akan  ada  kalau Kelas  Faktur  tidak  ada)  dan dalam  Faktur detail haruslah tertera KodeBarang minimal satu atau lebih

## 3.1.3 Activity Diagram
Gambar 3. Diagram Aktivitas
Penjelasan  untuk  gambar  activity diagram  tersebut  adalah  :  Terdapat  alur dari  kegiatan  penjualan  yaitu  dimulai  dari pelangan  menyerahkan  belanjaan  kepada fakturis,  lalu  dientry  data  belanjaan tersebut  selanjutnya  dicetak  faktur  oleh fakturis  yang  kemudian  diberikan  ke pelanggan, setelah  menerima faktur, pelanggan melakukan pembayaran melalui kasir yang datanya langsung dientry untuk dicetak kwitansi, kasir memberikan kwitansi  kepada  pelanggan  sebagai  tanda pelunasan.

## 3.1.4 Sequence Diagram
Gambar 4.  Contoh Sequence Diagram untuk Entry Faktur Penjelasan gambar 4 Sequence
Diagram  untuk entry faktur,  yaitu  :  kasir merupakan aktor yang berinteraksi langsung dengan tampilan layar dari entry faktur,  yang  pertama  dilakukan  adalah membuka  form  faktur  yang  kemudian melakukan  entry  kode  pelanggan,  dalam tampilan  form  entry  tersebut  akan  dapat secara  otomatis  tampil  kode  pelanggan dengan  cara  membaca  di  dalam    entitas pelanggan,  sehingga  akan  terkirim  pesan dari  kode  pelanggan  terakhir  yang  sudah dientri sebelumnya. Selanjutnya melakukan  pemasukan  data  barang  dalam form  faktur  dengan  cara  mengirimkan pesan ke  kontrol  barang  dan mencari  data barang  di  entitas  barang  yang  kemudian mengirimkan  pesan  kembali  sehingga tampil  data  barang  yang  diinginkan.
Kemudian  dimasukkan  jumlah  pembelian barang  dan  dilakukan  penghitungan  total pembelian  barang.    Setelah  semua  data entry  faktur  sudah  dilakukan  maka penyimpanan  data  faktur  dalam  entitas faktur  dan  detil  faktur,  serta  program melakukan  pengurangan  stok.  Pencetakan faktur  dilakukan  dengan  menggunakan printer.

## 3.1.5 State Diagram
Gambar 5.  Contoh Sequence Diagram
untuk Entry Faktur
Penjelasan sequence diagram  untuk entry faktur  pada  gambar  5  diatas,  yaitu  : Kegiatan  pertama  kali  dimulai  saat dilakukan  pengentrian  faktur  dengan memasukkan entry pelanggan yang kemudian  dilanjutkan  dengan  entry  data barang  yang  dicek  apakah  datanya  sudah ada  dalam  master  barang,    jika  ada  maka data barang yang diminta akan ditampilkan beserta harganya.  Selanjutnya dilakukan penghitungan total dan penyimpanan  faktur,  untuk  penyimpanan data  dan  cetak  faktur  dilakukan  secara bersamaan,  maka  berakhirlah  kegiatan pengentrian faktur.

## 3.1.6 Collaboration Diagram
Penjelasan untuk gambar 6 mengenai collaboration diagram  entry  faktur,  yaitu : Aktor  kasir  membuka  form  entry  faktur, kontrol akan menampilkan form,
selanjutnya  kasir  akan  memasukkan  kode pelanggan  yang  akan  dicari  ke  dalam entitas pelanggan, kasir memasukkan kode barang yang datanya juga akan dicocokkan dengan  data  yang  ada  dalam  entitas barang,  untuk  penyimpanan  data  akan menambah informasi baru ke dalam entitas faktur  dan  detil  faktur  serta  terjadi pengurangan  stok  barang,  bukti  faktur kemudian dicetak melalui printer.

## Gambar 6.  Contoh Collaboration Diagram
untuk Entry Faktur

## 3.2 PERANCANGAN DATABASE
Database yang  digunakan  adalah
Mysql  versi  mysql-5.5.28-win32  yang dapat diunduh
pada
http://www.mysql.com . Penggunaan  tabel di Mysql mempunyai banyak model tabel, yaitu  :  MyIsam,  InnoDB,  dan  lain-lain. Tetapi  yang  digunakan  adalah  InnoDB. Dengan hasil desain adalah sebagai berikut :

## Gambar 7.  Desain Table Penjualan
Dalam  gambar  7  untuk  sistem  ini terdapat  dua  tabel  master  yang  terbentuk yaitu  :  tabel  pelanggan  dan  tabel  barang, dengan 3 tabel transaksi yang terdiri dari : tabel  faktur,  tabel  kwitansi  dan  tabel fakturdetail.

## 3.2 PERANCANGAN APLIKASI
Pendesainan aplikasi penjualan diawali dengan  pembuatan  form  barang,  seperti yang  terlihat  pada  gambar  8.  Data masukan  yang  dibutuhkan  berupa  kode barang,  nama  barang,  stok  dan  harga standar barang.
Gambar 8.  Instan FrmBarang
Untuk transaksi penjualan yang dilakukan,  data  yang  dibutuhkan  adalah nomor  faktur,  tanggal  faktur,  kode
pelanggan,  kode  barang,  nama  barang, harga  barang,  kuantitas  pembelian,  total dan  grand  total  seperti  yang  terlihat  pada gambar 9.

## Gambar 9.  Form Penjualan
Setiap  transaksi  membutuhkan  suatu dokumen  sebagai  bukti  penjualan  barang, dalam  sistem  ini  yang  dikeluarkan  adalah kwitansi  dengan  data  yang  dibutuhkan adalah  nomor  kwitansi,  tanggal  kwitansi, nomor faktur, tanggal faktur, kode barang, nama  barang,  harga,  kuantiti,  total  dan grand  total  seperti  yang  terlihat  pada gambar 10.
Gambar 10. Form Kwitansi
Setelah  melakukan  instalasi  iReport maka  kita  dapat  melakukan  pembuatan laporan menggunakan iReport.  Pembuatan laporan  dibutuhkan  untuk  mengetahui secara  menyeluruh  mengenai  informasi mengenai  barang  yang  masih  dimiliki sehingga dapat memutuskan untuk menambahkan barang yang kurang
stoknya. Seperti yang terlihat pada gambar 11  terbentuk  suatu  laporan  tabel  barang yang  berisi  informasi  mengenai  kode barang,  nama  barang,  stok  barang  yang ada beserta harga standar barang.
Gambar 11.  iReport : Hasil Laporan Barang
Laporan  transaksi  yang  terbentuk  dari aktivitas  dapat  berupa  laporan  penjualan berdasarkan  faktur  sehingga  akan  terlihat seperti pada gambar 12.
Gambar 12.  iReport : Hasil Laporan Penjualan

## 4. SIMPULAN
Setiap aktivitas penjualan membutuhkan  kecepatan  dan  ketepatan dalam memberikan pelayanan serta keakuratan  data  sehingga  mendapatkan hasil  laba  seperti  yang  diinginkan  dapat tercapai.  Dengan  penggunaan  bahasa
pemrograman  java  dapat  meningkatkan kinerja  karena  dengan  teknologi  yang dipergunakan  akan  dapat  menghasilkan aplikasi penjualan sesuai dengan kebutuhan pengguna.

## 5. PUSTAKA
[1]   Jeffery  L.  Whitten,  etl,  2002, Metode  Desain  &  Analis  Sistem, ed. 6, McGraw Hill Education
[2]   Haigh  A.,  2001,  Object  Oriented Analysis & Design, Osborne MC. Graw Hill
[3]   M. Heiver,  Deitel and J. Deitel Paul, 2011,    Java  for  Programmers, ed.2, Deitel & Association Inc.
[4]   Siegel, Joel G dan Jae K. Shim yang diterjemahkan  oleh  Moh  Kurdi  , 1999,  Kamus  Istilah  Akuntansi,:
PT  Elex  Media  Komputindo,  hal
404.
[5]   Asri,  Marwan,  1991,  Marketing, edisi  pertama,  ,  Yogyakarta, UUP-AMP, YKPN
[6]   Sholiq,  2006,  Pemodelan  sistem
informasi berorientsi obyek dengan  UML,  edisi  pertama. Yogyakarta : Graha Ilmu [7]   Gata, Windu, 2012, Asyiknya Mengenal Java, Gramedia.