Studi Kasus : Grosir “Wijaya” Indramayu Tugas Akhir Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika
SISTEM INFORMASI GROSIR
BERBASIS CLIENT- SERVER
Studi Kasus : Grosir “Wijaya” Indramayu
Tugas Akhir
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Informatika
Oleh :
Stephanus Kridho Budi Wibowo
NIM : 025314050
PROGRAM STUDI TEKNIK INORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
WHOLESALE INFORMATION SYSTEM
BASED ON CLIENT- SERVER
Case Study : Grosir “Wijaya” Indramayu
A Thesis
Presented as Partial Fulfillment of the Requirements
to Obtain the Sarjana Teknik Degree
in Informatic Engineering
by :
Stephanus Kridho Budi Wibowo
NIM : 025314050
DEPARTEMENT OF INFORMATIC ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITYYOGYAKARTA
2007
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis tidak
memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan
dan daftar pustaka, sebagaimana layaknya karya ilmiah.Yogyakarta, 08 Oktober 2007 Penulis Stephanus Kridho Budi Wibowo
HALAMAN PERSEMBAHAN
Kupersembahkan karya tulis ini kepada :
Junjungan saya Bunda Maria dan Putranya
Terkasih Tuhan Saya Yesus Kristus.
Bapak dan Ibu tercinta atas semangat,
doa dan dukungan secara moril dan
materil.
Saudaraku terkasih Leonardus Danu L.
Almamaterku Teknik Informatika,
khususnya angkatan 2002
HALAMAN MOTTO
Jangan pernah takut menghadapi berbagai macam resiko dalam
mewujudkan sebuah impian. Tak pernah ada sebuah harapan dan
keinginan yang begitu mudah dicapai. Guru pengalaman selalu
memberikan ujian terlebih dahulu baru kemudian pemahaman.
Teruslah berusaha tapi jangan lupa untuk selalu mengasah
gergaji.
“Sejatine wong urip iku angger’e ora wedi urip rekoso”.
Siapapun yang menentang ketidak-adilan adalah temanku
(Che Guevara)
”Sejatine wong urip iku mung ibarat mampir ngombe”
INTISARI
Grosir merupakan sebuah usaha yang bergerak dalam bidang jual belibarang. Proses bisnis yang ada di dalam sebuah grosir melibatkan bagian
pembelian, penjualan, kasir, inventori dan manajer. Pengelolaan data dan
informasi pada suatu grosir biasanya dikerjakan secara manual. Tanpa
penggunaan sistem informasi, maka pendataan transaksi jual beli dicatat dalam
buku. Kelemahan-kelemahan pada pendataan informasi yang dikerjakan secara
manual pada umumnya adalah : Membutuhkan waktu lebih lama dalam melayani
transaksi jual-beli karena harus dihitung secara manual atau dengan kalkulator.
Memerlukan waktu yang lebih lama untuk memantau dan mengetahui data jumlah
stok barang yang ada dan Kemungkinan adanya data-data yang hilang karena
tidak tercatat.Teknologi yang digunakan adalah Java dan MySQL. Sistem ini
dikembangkan dengan menggunakan metodologi rekayasa perangkat lunak
terstruktur.Hasil akhir dari sistem yang dibuat adalah : aplikasi yang dibangun dapat
membantu manajer dalam memperoleh informasi pembelian, penjualan dan stok
barang pada grosir yang dimilikinya. Aplikasi yang dibangun memudahkan
bagian pembelian dan penjualan dalam melakukan pencatatan data pembelian dan
penjualan.
ABSTRACT
Wholesale is a kind of business in buying and selling goods. In awholesale process involves the processing division, selling division, cashier,
inventory and manager. Data management and information in a wholesale is
usually done manually. Without the usage of information system, the record of
transaction is booked. The weakness of manual data collection are : it takes more
time in doing buying and selling transaction because it need to be counted
manually or with calculator. It takes more time to observe and to know the
inventory of goods and there’s a possibility of lost data because they are not
recorded.The author uses Java and MySQL technology. This system is developed using structurized software methodology. The final result of this system are : this application can help manager in
obtaining information of purchasing, selling and inventory and this application
makes the recording in purchasing and selling easier.KATA PENGANTAR
Puji serta syukur saya panjatkan kepada junjungan saya Bunda Maria dan
Puteranya Terkasih Tuhan Yesus, karena atas limpahan anugerah dan cobaan-nya
saya dapat menyelesaikan tugas akhir ini.Dalam proses penulisan tugas akhir ini saya meyadari bahwa ada begitu
banyak pihak yang telah memberikan perhatian dan bantuan dengan caranya
masing-masing sehingga tugas akhir ini dapat selesai tepat waktu dan lancar. Oleh
karena itu saya ingin mengucapkan terima kasih antara lain kepada :1. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik Informatika Universitas Sanata Dharma sekaligus Dosen Pembimbing I, yang telah memberikan bimbingan, dukungan, dan fasilitas yang mendukung, sehingga saya dapat menyelesaikan tugas akhir ini dengan baik.
2. Bapak Ir. Gregorius Heliarko SJ, SS, BST, MA, M.Sc selaku Dekan Fakultas Teknik Universitas Sanata Dharma.
3. Bapak JB. Budi Darmawan, S.T., M.Sc dan Bapak St. Wisnu Wijaya, S.T., M.T. selaku panitia penguji yang telah memberikan banyak kritik dan saran demi sempurnanya tugas akhir saya.
4. Bapak dan Ibu tercinta. Terima kasih atas doa, semangat, dukungan dan cintanya sehingga saya bisa menyelesaikan studi dengan lancar. Semoga saya bisa membalas cinta kalian 5. Saudaraku terkasih : Leonardus Danu Laksono, terima kasih atas doanya dan rasa persaudaraan yang tetap hangat walaupun kita saling berjauhan.
6. Anak-anak Kost wisma Rajawali Paingan II periode 2002-2007 dan perserikatannya : Hari, Kristian, Andre, Deni, Wisnu “lepeg”, Yosep, Iman, Billy, Sukur, Pak Wid, Daniel Martobu, Hira, Aris Wijaya, Ari Purwadi, Andex, dan Alam. atas dukungan dan semangat serta rasa kesetiakawanan yang kalian tunjukkan selama kita bersama. Terima kasih atas caci-maki dan canda-tawa selama kita bersama. Maboes Bebak !
7. Teman-teman Teknik Informatika angkatan 2002 khususnya Pristo, Andhika dan Tjaya Budi, terima kasih atas bantuan ide dan pemikirannya. Terima kasih juga kepada Pram, Ase, Mc.D, Nico, Kristi dan Kuncunx atas bantuan sarana dan akomodasi. Buat teman-teman ku yang lain, Hasto, Albert, Widi, Ika, Gwendy, Tere, Afu, Yohana, Dedik, Andik dan yang lainnya, Selamat Berjuang !
8. Teman-teman di kesebelasan ANILOP FC, baik pemain inti, cadangan maupun suporter.
9. Inspirasi dan penyemangat saya Oom Bob Marley, Kurt Cobain, James Hetfield, dan Sid Vicious. Kreatif sampai mati !
10. Melodi-melodi blues yang selalu setia menemani malam-malam kesendirian saya ketika saya merasa sedih (maupun senang).
11. Dan seluruh pihak yang telah ambil bagian dalam proses penulisan tugas akhir ini yang tidak bisa saya sebutkan satu per satu.
Dengan rendah hati saya menyadari bahwa tugas akhir ini masih jauh dari
sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas akhir
ini sangat saya harapkan. Akhir kata, semoga tugas akhir ini bermanfaat bagi
semua pihak. Terima kasih.Yogyakarta, 08 Oktober 2005 Penulis
DAFTAR ISI JUDUL ...................................................................................................................... i HALAMAN PERSETUJUAN ................................................................................ ii HALAMAN PENGESAHAN ................................................................................. iii PERNYATAAN KEASLIAN KARYA .................................................................. iv HALAMAN PERSEMBAHAN............................................................................... v
HALAMAN MOTTO............................................................................................... vi
INTISARI ................................................................................................................. vii
ABSTRACT ............................................................................................................. viii
KATA PENGANTAR ............................................................................................. ix
DAFTAR ISI ............................................................................................................ xii
DAFTAR GAMBAR ............................................................................................... xv
DAFTAR TABEL .................................................................................................... xviii
BAB I PENDAHULUAN1.1
1 Latar Belakang Masalah ....................................................................
1.2
1 Rumusan Masalah ..............................................................................
1.3
2 Batasan Masalah.................................................................................
1.4
3 Tujuan Penulisan ...............................................................................
1.5
3 Metodologi Pengembangan Sistem....................................................
1.6
4 Sistematika Penulisan ........................................................................
BAB II. LANDASAN TEORI
2.1
6 Sistem, Informasi dan sistem informasi .............................................
2.2
7 Java GUI ..................…....................................................................
2.3
10 Basisdata MySQL...............................................................................
2.4
11 Arstektur Client-Server.......................................................................
BAB III. ANALISA DAN PERANCANGAN SISTEM
14
3.1
14 Analisa Sistem ...................................................................................
3.2
15 Analisa Pengguna Sistem…...............................................................
3.3
17 Gambaran Umum Sistem....................................................................
3.4
17 Pemodelan Use-Case …………………………………………….....
3.5
19 Konteks Diagram….. …………………………………………….....
3.6
19 Diagram Aliran Data …………………………………………….....
3.6.1
20 Diagram Berjenjang...........................................................
3.6.2
20 DAD Level 0 (Top Level) .................................................
3.6.3
22 DAD Level 1 Proses 1.......................................................
3.6.4
22 DAD Level 1 Proses 2.......................................................
3.6.5
22 DAD Level 1 Proses 3.......................................................
3.6.6
23 DAD Level 1 Proses 4.......................................................
3.6.7
23 DAD Level 1 Proses 5.......................................................
3.6.8
23 DAD Level 1 Proses 6.......................................................
3.6.9
24 DAD Level 1 Proses 7.......................................................
3.6.10
24 DAD Level 1 Proses 8.......................................................
3.6.11
25 DAD Level 1 Proses 9.......................................................
3.6.12
25 DAD Level 1 Proses 10.....................................................
3.7
25 Perancangan Basidata…………………………………………….....
3.7.1
25 ER Diagram………….......................................................
3.8
26 Desain Database………………………………………………….....
3.8.1
26 Desain Logikal……….......................................................
3.8.2
26 Desain Fisikal ……….......................................................
3.9
28 Desain Input-Output…..………………………………………….....
BAB IV. IMPLEMENTASI SISTEM
36
4.1
37 Pembuatan Database.........................................................................
4.2
39 Koneksi Database.............................................................................
4.3
39 Pembuatan Antar Muka Pemakai (User Interface)...........................
BAB V. ANALISA HASIL IMPLEMENTASI
97
5.1
97 Kelebihan Dan Kekurangan Sistem...................................................
5.1.1
97 Kelebihan Sistem…........................................................
5.1.2
97 Kekurangan Sistem…......................................................
BAB VI. KESIMPULAN DAN SARAN
98
6.1
98 Kesimpulan........................................................................................
6.2
98 Saran...................................................................................................
DAFTAR PUSTAKA
99
DAFTAR GAMBAR
Gambar Keterangan Halaman
3.15 DAD Level 1 Proses 20
3.11 DAD Level 1 Proses 6
23
3.12 DAD Level 1 Proses 7
24
3.13 DAD Level 1 Proses 8
24
3.14 DAD Level 1 Proses 9
24
25
3.10 DAD Level 1 Proses 5
3.16 Fully Attributd Data Model
25
3.17 Desain Logikal
26
3.18 Form Login
28
3.19 Form Manajer
29
3.20 Form Memasukkan Data Pembelian
23
23
2.1 Arsitektur Two Tier
19
12
2.2 Arsitektur Three Tier
13
3.1 Konigurasi Jaringan
17
3.2 Diagram Use-Case
18
3.3 Konteks Diagram
3.4 Diagram Berjenjang
3.9 DAD Level 1 Proses 4
20
3.5 DAD Level 0
21
3.6 DAD Level 1 Proses 1
22
3.7 DAD Level 1 Proses 2
22
3.8 DAD Level 1 Proses 3
22
29
3.21 Form Memasukkan Data Penjualan
4.4 Form Memasukkan Data Penjualan
35
3.35 Form Mengubah Harga Barang
35
4.1 Form Login
40
4.2 Form Manajer
44
4.3 Form Memasukkan Data Pembelian
47
50
34
4.5 Form Memasukkan Data Barang
53
4.6 Form Memasukkan Data Supplier
56
4.7 Form Menampilkan Data Barang
60
4.8 Form Menampilkan Data Supplier
64
4.9 Form Mengubah Data Supplier
3.34 Form Data Karyawan
3.33 Form Laporan Penjualan Barang
30
31
3.22 Form Memasukkan Data Barang
30
3.23 Form Memasukkan Data Supplier
30
3.24 Form Menampilkan Data Barang
31
3.25 Form MenampilkanData Supplier
31
3.26 Form Mengubah Data Supplier
3.27 Form Pencarian Data Barang
34
32
3.28 Form Pencarian Data Supplier
32
3.29 Form Menampilkan Data Pembelian
32
3.30 Form Menampilkan Data Penjualan
33
3.31 Form Rancangan Nota Penjualan
33
3.32 Form Laporan Pembelian Barang
68
4.10 Form Pencarian Data Barang
73
4.11 Form Pencarian Data Supplier
76
4.12 Form Laporan Data Pembelian Barang
81
4.13 Form Laporan Data Penjualan Barang
84
4.14 Form Data Karyawan
88
4.15 Form Mengubah Harga Barang
92
DAFTAR TABEL
Tabel 3.1 Tabel karyawan ...............................................................................26 Tabel 3.2 Tabel barang .................................................................................... 27 Tabel 3.3 Tabel supplier...................................................................................
27 Tabel 3.4 Tabel beli..........................................................................................
27 Tabel 3.5 Tabel jual..........................................................................................
27 Tabel 3.6 Tabel detil_beli ...............................................................................
28 Tabel 3.7 Tabel detil_jual ...............................................................................
28
BAB I PENDAHULUAN
1.1 Latar Belakang Masalah
Grosir merupakan sebuah usaha yang bergerak dalam bidang jual beli barang. Proses bisnis yang ada di dalam sebuah grosir melibatkan bagian pembelian, penjualan, kasir, inventori dan manajer. Pengelolaan data dan informasi pada suatu grosir biasanya dikerjakan secara manual. Tanpa penggunaan sistem informasi, maka pendataan transaksi jual beli dicatat dalam buku. Kelemahan-kelemahan pada pendataan informasi yang dikerjakan secara manual pada umumnya adalah : 1.
Membutuhkan waktu lebih lama dalam melayani transaksi jual-beli
karena harus dihitung secara manual atau dengan kalkulator.
2. Memerlukan waktu yang lebih lama untuk memantau dan mengetahui data jumlah stok barang yang ada.
3. Kemungkinan adanya data-data yang hilang karena tidak tercatat.
1.2 Rumusan Masalah
Dari latar belakang tersebut diatas, penulis tertarik untuk mengembangkan sistem informasi untuk menangani proses pembelian dan penjualan pada sebuah grosir.
1.3 Batasan Masalah 1.
Proses bisnis dan data contoh yang diambil adalah data dari grosir ”Wijaya” yang beralamat di Blok Sukajadi, No. 30, RT 06/03, Tukdana, Tukdana, Indramayu, Jawa Barat – 45272.
2. Tidak membahas masalah keamanan jaringan komputer dan keamanan sistem yang dibuat.
3. Tidak menyertakan sistem informasi akuntansi.
4. Hanya menangani masalah pembelian dan penjualan.
5. Sistem ini tidak menangani order barang. Barang dagangan yang dimiliki diasumsikan sudah dibeli.
6. Tidak membahas masalah transaction management dalam pengaksesan basisdata.
7. Tidak membuat dan mencetak laporan akuntansi yang sifatnya berkala dan terjadwal. Hasil dari proses transaksi penjualan dan pembelian, dan proses bisnis yang ada hanya ditampilkan dalam bentuk data-data yang tidak berbentuk laporan. Data-data yang ada ada dapat dilihat
pada rentang waktu yang fleksibel dan bisa ditentukan sendiri.
8. Sistem informasi yang dibuat menggunakan sistem basisdata terpusat atau centralized database dengan arsitektur client-server menggunakan model two tier.
9. Sistem informasi ini dibuat dengan menggunakan bahasa pemrograman Java dan basisdata MySQL 5.0.15
1.4 Tujuan Dan Manfaat Penelitian Tujuan penelitian dalam tugas akhir ini adalah membuat sistem informasi yang dapat diterapkan pada sebuah grosir dengan memakai tahap- tahap rekayasa perangkat lunak terstruktur. Sedangkan manfaat penelitian dalam tugas akhir ini adalah meningkatkan kinerja sistem dalam menangani proses pembelian dan penjualan yang ada dalam sebuah grosir dengan memanfaatkan teknologi informasi.
1.5 Metodologi Penelitian Metodologi penelitian yang digunakan adalah studi kasus dengan langkah-langkah sebagai berikut :
1. Survei dan pengambilan data contoh Melakukan survei ke Grosir ”Wijaya” Indramayu, mengambil data contoh barang dagangan, dan melakukan wawancara dengan karyawan maupun pemilik usaha grosir.
2. Studi literatur a.
Mempelajari tahapan rekayasa perangkat lunak terstruktur yaitu : 1.
Analisa kebutuhan sistem, pendefinisian dan pemodelan sistem dalam bentuk use case, konteks diagram, dan diagram aliran data.
2. Pembuatan diagram relasi antar entitas (ER diagram), perancangan tabel basisdata, pendefinisian modul-modul program dan antarmuka sistem.
3. Pengujian atas hasil pengkodean dari rancangan yang dibuat.
b.
Mempelajari bahasa pemrograman dan basisdata yang akan digunakan dalam membangun sistem.
3. Pembuatan perangkat lunak dengan tahap-tahap : a.
Analisa sistem b. Desain sistem c. Implementasi sistem
1.6 Sistematika Penulisan
Sistematika penulisan tugas akhir ini adalah sebagai berikut :
BAB I PENDAHULUAN Menjelaskan tentang latar belakang masalah, batasan masalah, tujuan dan manfaat penelitian, rumusan masalah, metodologi penelitian dan sistematika penulisan tugas akhir.
BAB II LANDASAN TEORI Menjelaskan dasar teori yang digunakan dalam penulisan tugas akhir. Dasar teori tersebut meliputi pembahasan tentang pengertian sistem, informasi dan sistem informasi, pemrograman GUI dengan Java, basisdata MySQL dan arsitektur client-server.
BAB III ANALISA DAN PERANCANGAN SISTEM Menjelaskan tentang rancangan sistem, rancangan proses, rancangan basisdata dan rancangan antarmuka sistem.
BAB IV IMPLEMENTASI SISTEM Menjelaskan tentang implementasi rancangan sistem ke dalam suatu program atau pembahasan program. BAB V ANALISA HASIL Menjelaskan tentang analisa dari hasil penelitian dan pembuatan sistem yang telah dilakukan. BAB VI KESIMPULAN DAN SARAN Menjelaskan tentang kesimpulan yang diambil dari penulisan tugas akhir ini dan saran yang diberikan oleh penulis.
BAB II LANDASAN TEORI
2.1 Sistem, Informasi, dan Sistem Informasi a.
Sistem Sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Definisi tersebut lebih dapat diterima, karena pada kenyataannya suatu sistem terdiri dari beberapa elemen atau subsistem. Elemen-elemen tersebut tidak dapat berdiri sendiri-sendiri dalam suatu sistem tetapi harus saling berinteraksi dan saling berhubungan untuk membentuk satu kesatuan sehingga tujuan sistem dapat tercapai. Maka suatu sistem harus mempunyai tujuan tertentu agar elemen masukan, elemen pengolah dan elemen keluaran dapat ditentukan dengan tepat.
b.
Informasi Informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya. Informasi sangat penting dalam suatu organisasi. Suatu sistem yang kurang mendapatkan informasi akan menjadi kecil dan akhirnya akan habis. Informasi- informasi yang diperoleh dari suatu sistem dapat digunakan dalam pengambilan sebuah keputusan serta dalam melakukan tindakan selanjutnya, sehingga dibutuhkan informasi yang akurat, tepat pada waktunya dan relevan atau bermanfaat bagi penggunanya. Selain itu informasi harus memiliki nilai informasi yang dapat ditentukan oleh dua hal yaitu manfaat dan biaya mendapatkannya. Suatu informasi dikatakan bernilai jika manfaatnya lebih efektif dibandingkan dengan biaya untuk mendapatkan informasi tersebut. Suatu informasi yang diperoleh mungkin memiliki beberapa kegunaaan sehingga digunakan tidak hanya oleh satu pihak saja di dalam suatu organisasi melainkan digunakan bersama-sama.
c.
Sistem Informasi Definisi sistem informasi menurut Robert A. Leitch dan K. Roscoe Davis dalam buku “Accounting Information Systems” (1993), adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan.
2.2 Java Graphical User Interface (Java GUI) Java menyediakan API untuk membuat aplikasi berbasis grafis atau yang lebih dikenal dengan Graphical User Interface (GUI). Ada dua package untuk membuat GUI yaitu AWT (Abstract Windowing Toolkit) dan Swing.
AWT menyediakan beberapa fasilitas yang bisa digunakan untuk keperluan grafis, yaitu :
1. Pengaturan tata letak (layout management) komponen.
2. Event handling, yaitu pendeteksian setiap event dan penentuan respon yang akan diberikan ketika pengguna menekan atau mengklik komponen, untuk kemudian melakukan proses yang diinginkan.
3. Manipulasi grafis komponen, meliputi teks, warna, ukuran, dan lain- lain. AWT juga memiliki beberapa komponen untuk aplikasi GUI yaitu button, canvas, cheskbox, choice, label, list, scroolbar, textfield, dan textarea. Setiap komponen ini memiliki fungsi dan cara pembuatan yang berbeda-beda.
Swing memiliki komponen yang lebih banyak dibandingkan dengan
AWT, selain itu Swing juga memiliki fasilitas Look and Feel yaitu metal,
windows, dan CDE/motif. Dengan Look and Feel, GUI akan terlihat lebih
menarik. Swing memiliki beberapa komponen untuk aplikasi GUI yaitu
button, combo box, check box, label, list, scroolbar, textfield, radio button,
option pane, slider, progress bar, tabel, menu, dan textarea.Graphical User Interface merupakan salah satu fasilitas yang
disediakan untuk membuat user lebih nyaman dalam melakukan interaksi
dengan program. Graphical User Interface (GUI) merupakan suatu teknik
atau mekanisme untuk berinteraksi dengan sebuah program. GUI dibangun
menggunakan suatu komponen GUI. Komponen GUI merupakan objek yang
dapat menerima masukan dari pengguna melalui mouse atau keyboard. Ada
beberapa item yang cukup penting dalam pembuatan Graphical User
Interface seperti Component dan Container. Component dan Container
merupakan dua item yang cukup penting dalam Graphical User Interface.Component adalah item yang dapat ditampilkan pada sebuah
graphcis screen seperti button (tombol), textfields, scrollbars dan drop-down
list. Sedangkan Container adalah sebuah item yang digunakan untuk
menampung beberapa set komponen sehingga menjadi suatu grup.
Container bisa diasumsikan sebagai wadah dan Component sebagai barang-
barang yang terdapat dalam wadah itu. Di dalam suatu Container bisa
terdapat Container yang lain (Container dalam Container).GUI Component yang biasa digunakan pada Java 2 sudah
distandarkan dalam package javax.swing. GUI Component ini sering dikenal
pula sebagai Swing GUI Component. Diagram Inheritance dari Swing GUI
adalah class JComponent, yang terletak dalam package javax.swing yang
merupakan superclass dari beberapa component Swing GUI seperti JLabel
dan JButton. Komponen Swing merupakan bagian dari Java Foundation
Class (JFC).Setiap komponen GUI, seperti button (tombol), textfield dan lain-lain
biasa digunakan untuk keperluan input data maupun memproses data yang
di-input-kan. Dengan demikian, masing-masing komponen GUI perlu
memiliki kemampuan untuk mendengarkan (listen) terjadinya suatu event
pada komponen tersebut dan kemudian kode yang bersesuaian perlu dieksekusi. Event-handling ini terdiri atas 3 bagian utama yaitu : a.
Event source Komponen GUI di mana user berinteraksi.
b.
Event object
Object yang berisi informasi tentang event yang terjadi.
c.
Event listener Object yang menerima (mendengarkan) event object dan kemudian menyiapkan respon yang bersesuaian.
2.3 Basisdata MySQL
MySQL adalah salah satu jenis server basisdata yang sangat terkenal, disebabkan MySQL menggunakan SQL sebagai bahasa dasar untuk mengakses basisdata. MySQL bersifat free atau gratis (tidak perlu membayar dalam menggunakannya). MySQL dapat digunakan pada berbagai platform sistem operasi.
MySQL mempunyai kelebihan dapat diakses oleh banyak bahasa pemrograman sebagai “frontend”. MySQL merupakan server basisdata yang ideal untuk data segala ukuran dengan kemampuan mempunyai kecepatan yang sangat tinggi dalam melakukan proses data, multi-threaded, multi user dan query.
SQL (Structure Query Language) bukan merupakan suatu perangkat lunak atau bahasa pemrograman. Namun, SQL adalah bahasa standar yang digunakan untuk mengolah sebuah basisdata. Perintah SQL dikelompokkan menjadi :
1. DDL (Data Definition Language) DDL merupakan perintah yang digunakan untuk membuat dan mendefinisikan basisdata dan struktur tabelnya. Seperti CREATE DATABASE, CREATE TABLE, DROP VIEW, DROP TABLE, ALTER TABLE.
2. DML (Data Manipulation Language) DML adalah perintah yang digunakan untuk melakukan proses manipulasi atau pengelolaan data yang ada dalam basisdata atau tabel. Seperti INSERT, SELECT, UPDATE, dan DELETE.
3. DCL (Data Control Language) DCL adalah kelompok perintah yang digunakan untuk melakukan otorisasi terhadap hak akses suatu data dan pengalokasian ruang.
Seperti REVOKE, GRANT, COMMIT, dan ROLLBACK.
2.4 Arsitektur Client-Server
Dasar sederhana dari arsitektur client-server adalah komputer yang berbeda melakukan tugas yang berbeda dan setiap komputer dapat dioptimalkan untuk tugas tertentu. Untuk dapat membentuk sebuah arsitektur client-server diperlukan file server, PC workstation, Network Interface Card (NIC), media transmisi dan topologi jaringan.
DBMS diletakkan di dalam sebuah komputer yang disebut dengan database server. Aplikasi yang berjalan pada komputer client dapat mengaksesnya dan semuanya melakukan permintaan dari basisdata yang
sama. Aplikasi client tidak mengetahui bagaimana data disimpan dalam
server basisdata.Terdapat dua macam model implementasi pada arsitektur client-server
yaitu model dua tingkat atau two tier dan model tiga tingkat atau three tier.
Model yang digunakan dalam pembuatan implementasi sistem informasi ini
adalah model dua tingkat. Pada arsitektur dua tingkat ini, client berbicara
langsung kepada server basisdata. Setiap aplikasi yang terhubung ke database
dan mengambil informasi adalah client-server. Database server berperan
mengakses dan meng-update data, yang lainnya diserahkan kepada client.Dalam hal ini client bertanggung jawab menampilkan data kepada
user, mengirimkan input dari user dan mempersiapkan permintaan yang sesuai
untuk server basisdata. Arsitektur model two tier ini memiliki kelemahan
yaitu apabila terjadi perubahan atau perbaikan aplikasi basisdata maka harus
dilakukan setting ulang dan instalasi di semua mesin client.Untuk mengatasi kelemahan pada model two tier maka dikembangkan
arsitektur jaringan dengan model three tier. Pada model ini proses dipecah ke
dalam tiga lapisan yaitu : 1.Lapisan client yang merupakan tempat dimana program aplikasi dijalankan.
2. Lapisan bisnis/menengah yang bertanggung jawab terhadap proses, prosedur dan fungsi yang dilakukan oleh aplikasi, memproses data dan mengolah transaksi. Proses ini pada sistem two tier terjadi pada sisi client namun pada model three tier dipindahkan di lapisan bisnis/menengah.
3. Lapisan data tempat memproses data dan tempat sumber data berada.
Lapisan ini memberi layanan terhadap satu atau lebih permintaan data dari lapisan bisnis/menengah.
Gbr. 2.2 Arsitektur Three Tier
BAB III ANALISA DAN PERANCANGAN SISTEM Pada bab ini akan dibahas tentang analisa perangkat lunak yang dipakai
untuk menangani proses pembelian dan penjualan grosir. Pada tahap ini dilakukan
pendefinisian dan pemodelan sistem yang dibangun. Analisa dan perancangan
yang dilakukan meliputi rancangan sistem, rancangan proses, rancangan basisdata
dan rancangan antarmuka sistem.3.1 Analisa Sistem
Sistem informasi yang dibangun adalah sistem informasi pembelian dan penjualan pada sebuah grosir berbasis client-server. Perancangan sistem ini dilakukan dengan metode rekayasa perangkat lunak terstruktur. Sistem informasi yang dibuat digunakan untuk mengelola data pembelian, data penjualan, data supplier, dan data barang pada sebuah grosir. Program yang dibuat digunakan untuk menampilkan informasi-informasi yang datanya disimpan dalam suatu basisdata.
Sistem informasi ini dibuat berdasarkan contoh kasus yang ada pada grosir ”Wijaya” yang beralamat di Blok Sukajadi, No. 30, RT 06/03, Tukdana, Tukdana, Indramayu, Jawa Barat – 45272. Barang dagangan yang diperjual- belikan diantaranya adalah beras, tepung terigu, minyak goreng, gula pasir dan barang kebutuhan lainnya. Pada umumnya grosir tersebut membeli barang dagangan dari supplier yang menjadi langganannya. Meskipun begitu tidak tertutup kemungkinan mereka membeli barang dari supplier-supplier lainnya.
3.2 Analisa Pengguna Sistem
Proses bisnis yang ada pada grosir ”Wijaya” melibatkan bagian-bagian sebagai berikut : bagian pembelian, bagian penjualan dan pemilik usaha.
Sistem yang dibuat berbasis multi-user, dimana terdapat sebuah komputer pada ruangan tiap-tiap bagian yang terhubung ke server basisdata. Berikut ini akan dijelaskan fungsionalitas dari tiap-tiap bagian.
1. Bagian Pembelian Bagian pembelian bertanggung jawab untuk mencatat data pembelian atas barang dan melakukan pembayaran kepada pihak supplier . Bagian pembelian mengetahui tentang jumlah dan jenis barang yang harus dibeli lewat informasi-informasi yang didapat dari pemilik usaha. Hanya pemilik usaha saja yang memiliki wewenang penuh untuk menentukan jumlah dan jenis barang yang harus dibeli. Pada saat melakukan transaksi pembelian barang dari supplier, karyawan bagian pembelian selalu meminta nota pembelian kepada supplier dan memberikan nomor urut pada setiap nota pembelian yang didapatkan.
2. Bagian Penjualan Bagian penjualan bertanggung jawab untuk menangani transaksi penjualan kepada customer. Termasuk di dalam bagian ini adalah petugas kasir. Bagian penjualan bertugas untuk menyimpan data penjualan barang kepada customer dan bertugas membuat nota penjualan sebagai bukti transaksi penjualan.
3. Pemilik Usaha Pemilik usaha bertugas untuk mengatur jalannya proses bisnis dari segi perencanaan, pengorganisasian, pelaksanaan maupun pengendalian. Pemilik usaha juga-lah yang berhak menentukan harga jual suatu barang dagangan. Dengan kata lain pemilik grosir ini merangkap sebagai manajer pada grosir yang dimilikinya.
Pengendalian yang dilakukan oleh manajemen salah satunya adalah dengan melihat data-data yang disimpan dari transaksi jual-beli yang ada. Untuk selanjutnya, pemilik usaha ini akan disebut sebagai manajer.
Pemilik usaha grosir tersebut memiliki kebijakan untuk melakukan transaksi pembelian dan penjualan secara tunai.
Alasannya adalah jika ia melakukan transaksi penjualan dan pembelian secara kredit, ia akan terlalu kesulitan dalam membuat kebijakan untuk menentukan harga jual barang. Hal itu dikarenakan barang yang diperjual-belikan pada grosir miliknya adalah barang- barang kebutuhan pokok sehari-hari yang harganya relatif tidak stabil. Dan menurutnya akan terlalu beresiko jika ia melakukan transaksi secara kredit.
3.3 Gambaran Umum Sistem Gbr. 3.1 Konfigurasi Jaringan Sistem yang akan dibuat menggunakan tiga buah komputer dengan konfigurasi jaringan seperti gambar diatas. Komputer-komputer yang ada digunakan oleh manajer, operator bagian penjualan dan operator bagian pembelian. Komputer server digunakan sebagai tempat penyimpanan basisdata. Sedangkan komputer bagian penjualan dan bagian pembelian merupakan komputer client yang mengakses basisdata.
3.4 Pemodelan Use Case (Use Case Modeling)
Diagram Use Case merupakan pemodelan fungsi sistem dalam konteks peristiwa bisnis, siapa yang mengawalinya dan bagaimana sistem itu merespon hal-hal tesebut. (Whitten, 2004).
Gbr. 3.2 Diagram Use Case
3.5 Konteks Diagram Konteks diagram merupakan sebuah gambaran model proses untuk mendokumentasikan lingkup sistem.
Gbr. 3.3 Konteks Diagram
3.6 Diagram Aliran Data (DAD) Diagram aliran data merupakan gambaran dari sistem yang menekankan pada logika dari kebutuhan sistem, yaitu proses yang secara logika dibutuhkan oleh sistem.
3.6.1 Diagram Berjenjang Diagram berjenjang merupakan gambaran dari tingkatan- tingkatan proses yang ada di dalam sistem. Diagram berjenjang merupakan awal garis besar penggambaran diagram aliran data yang ada di dalam sistem.
Gbr. 3.4 Diagram Berjenjang
3.6.2 DAD Level 0 (Top Level) Diagram aliran data pada level 0 menggambarkan aliran data yang terjadi pada proses ke 0 atau proses sistem secara keseluruhan.
Diagram ini merupakan gabungan dari aliran-aliran data dari sub-sub proses yang ada di dalam sistem
Gbr. 3.5 DAD Level 0
3.6.3 DAD Level 1 Proses 1 Gbr 3.6 DAD Level 1 Proses 1
3.6.4 DAD Level 1 Proses 2 Gbr 3.7 DAD Level 1 Proses 2
3.6.5 DAD Level 1 Proses 3 Gbr 3.8 DAD Level 1 Proses 3
3.6.6 DAD Level 1 Proses 4 Gbr 3.9 DAD Level 1 Proses 4
3.6.7 DAD Level 1 Proses 5 Gbr 3.10 DAD Level 1 Proses 5
3.6.8 DAD Level 1 Proses 6 Gbr 3.11 DAD Level 1 Proses 6