kata - web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan...

52
PROPOSAL PROPOSAL PENAWARAN SISTEM APLIKASI INVENTORY DI PENAWARAN SISTEM APLIKASI INVENTORY DI TOKO PERLENGKAPAN KOMPUTER (DATALIMA) TOKO PERLENGKAPAN KOMPUTER (DATALIMA) HENDRA KURNIAWAN 107091002527 FAKULTAS SAINS DAN TEKNOLOGI JURUSAN TEKNIK INFORMATIKA UNIVERSITAS SYARIF HIDAYATULLAH JAKARTA

Upload: phunghanh

Post on 30-Jan-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

PROPOSALPROPOSALPENAWARAN SISTEM APLIKASI INVENTORY DI PENAWARAN SISTEM APLIKASI INVENTORY DI

TOKO PERLENGKAPAN KOMPUTER (DATALIMA)TOKO PERLENGKAPAN KOMPUTER (DATALIMA)

HENDRA KURNIAWAN107091002527

FAKULTAS SAINS DAN TEKNOLOGIJURUSAN TEKNIK INFORMATIKA

UNIVERSITAS SYARIF HIDAYATULLAH JAKARTA2009

Page 2: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

KATA PENGANTAR

Puji syukur penulis panjatkan kehadirat Allah swt, karena berkat izin dan

rahmat-Nya penulis dapat menyelesaikan proposal ini dengan baik dan tepat pada

waktunya. Shalawat serta salam semoga tercurah kepada penghulu alam Nabi

Muhammad saw.

Proposal yang berjudul SISTEM PENAWARAN APLIKASI INVENTORY

DI TOKO PERLENGKAPAN KOMPUTER(DATALIMA) ini disusun untuk

memenuhi kriteria tugas individu mata kuliah Rekayasa Perangkat Lunak Semester

IV. Adapun tema yang diangkat penulis dalam proposal ini adalah berkenaan dengan

inventory (inventarisasi/ persediaan) barang. Alasan penulis memilih tema tersebut

adalah karena pertama, penulis merasa tertarik untuk mengetahui seluk beluk bagian

inventory dalam sebuah perusahaan.

Kedua, penulis menganggap bahwa tema tersebut belum dipakai oleh

mahasiswa yang lain di kelas, sehingga merupakan tema yang baru dan satu-satunya.

Dengan demikian penilaian yang dilakukan bisa maksimal karena hanya satu tema

yang diangkat oleh satu mahasiswa.

Sekilas tentang inventory ̶ dalam bahasa indonesia inventory bisa disebut

sebagai barang persediaan. Barang-barang ini bisa berupa barang mentah, barang

setengah jadi, barang jadi atapun barang-barang spare part untuk keperluan

maintenance lainnya. Pada era sekarang ini, tentu saja untuk mengatur inventory

secara manual sangat sulit dilakukan. Maka untuk mengatasi masalah tersebut

diperlukan sebuah software (aplikasi) yang bertujuan untuk mengefisiensikan

kegiatan inventory. Dalam proposal ini, yang akan penulis bahas adalah inventory

untuk barang jadi atau barang penjualan di sebuah Toko Komputer Bernama

DATALIMA.

Dalam proposal ini akan dijelaskan mengenai tahapan-tahapan dalam

pengajuan sebuah software (aplikasi) kepada customer yang dalam hal ini adalah

sebuah toko perlengkapan komputer bernama DATALIMA. Tahapan-tahapan

Page 3: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

tersebut meliputi bagaimana caranya menganalisis kondisi bisnis tok, peluang apa

yang sekiranya bisa diperoleh dari kondisi tersebut, dan bagaimana solusi untuk

mengatasi kekuarang bisnis proses pada toko tersebut.

Jadi, proposal ini adalah sebuah latihan untuk bagaimana caranya untuk

mengajukan sebuah project Perangkat Lunak pada seorang customer. Diasumsikan,

bahwa penulis adalah seorang perancang atau desainer sitem, dan dosen sebagai

customer. Penulis akan mempresentasikan aplikasi yang ditawarkan dan dosen

menilai apakah rancangan sitem aplikasi tersebut sudah sesuai dengan kriteria atau

belum.

Penulis berharap, proposal ini bisa mendapatkan apresiasi yang maksimal

dari dosen terkait. Akan tetapi, penulis menyadari pula bahwa proposal ini masih

jauh dari baik dan sempurna. Untuk itu, penulis berharap kepada dosen terkait

ataupun pembaca untuk bisa memberikan kritik ataupun saran kepada penuis

terhadap proposal ini. Hal tersebut diharapkan tidak lain untuk bahan evaluasi

penulis dalam menyusun proposal yang lebih baik dimasa yang akan datang.

Akhirnya, penulis ingin berterima kasih kepada pihak-pihak yang telah

membantu dalam penyusunan proposal ini. Kepada orang tua penulis yang selalu

memberikan dukungan moril maupun materiil dalam menjalankan peran di kampus.

Kepada Ibu A. Hanifah, S.Msi yang telah memberikan materi, dan dukungan moral

kepada penulis selaku mahasiswa yang diajar. Kepada Ka Alfian semester 5

peminatan Software Engineering, yang telah membantu penulis dalam meng-oprek

dan menyusun aplikasi inventory tersebut. Kepada Kevin dela Rosa, dkk yang telah

berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah

(proposal) ini. Dan kepada teman-teman di kelas TI-4D maupun di luar kelas yang

telah banyak memberikan dukungan pula berupa waktu untuk diskusi dan tukar

pikiran. Semoga apa pihak-pihak tersebut lakukan senantiasa dibalas dan

dilipatganakan pahalanya oleh Allah swt.

Terima kasih

Jakarta, Juni 2009

Penulis

Page 4: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

Hendra Kurniawan

Page 5: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

DAFTAR ISI

KATA PENGANTAR.............................................................................................................2

DAFTAR ISI............................................................................................................................4

BAB I PENDAHULUAN........................................................................................................6

1.1. LATAR BELAKANG.............................................................................................6

1.2. PERMASALAHAN.................................................................................................6

1.3. MAKSUD DAN TUJUAN......................................................................................7

1.4. RUANG LINGKUP PEMBAHASAN...................................................................7

1.5. SISTEMATIKA PENYUSUNAN PROPOSAL...................................................7

BAB II TINJAUAN PUSTAKA.............................................................................................9

2.1. PERANCANGAN SISTEM...................................................................................9

2.1.1. Data Flow Diagram (DFD).............................................................................9

2.1.2. Entity Relationship Diagram (ERD)..............................................................10

2.1.3. Flowchart......................................................................................................12

2.2. PEMBUATAN SISTEM.......................................................................................13

2.2.1. Database Manajemen Systems (DBMS)........................................................13

2.2.2. Structure Query Language (SQL).................................................................13

2.2.3. MySQL...........................................................................................................14

BAB III METODOLOGI.....................................................................................................15

3.1. METODOLOGI....................................................................................................15

3.1. DESAIN SISTEM..................................................................................................15

3.2.1. Desain Data Flow Diagram (DFD)...............................................................15

BAB IV APLIKASI DAN PEMBAHASANNYA...............................................................18

4.1. ANALISIS BISNIS KNOWLAGE......................................................................18

Page 6: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

4.2. ANALISIS BISNIS FUNCTION.........................................................................19

4.3. SOURCECODE.....................................................................................................19

4.4. ANALISIS SOURCECODE.................................................................................19

4.4.1. ANALISIS CLASS PROGRAM...................................................................19

4.4.2. ANALISIS FUNGSI PROGRAM.................................................................20

4.4.3. INTERFACE APLIKASI..............................................................................35

BAB V PENUTUP.................................................................................................................38

5.1. PENUTUP..............................................................................................................38

5.2. SARAN...................................................................................................................38

DAFTAR PUSTAKA............................................................................................................39

Page 7: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

BAB I PENDAHULUAN

1.1. LATAR BELAKANG

Dalam sistem inventory Toko PK DATALIMA, proses pemasukan dan

pengeluaran barang merupakan hal yang umum terjadi. Dengan jenis barang

mencapai ± 100 dan stok barang yang mencapai ratusan dalam satuan kecil dan

besar, kedua proses tersebut bukan hal yang mudah untuk dilaksanakan.

Pasalnya, mengingat pencatatan pergudangan yang masih bersifat manual, maka

hal tersebut semakin sulit untuk dikerjakan dan diselesaikan.

Untuk proses pemasukan barang, ruang gudang yang terbatas, adanya aturan

peletakan dan kurang mempertimbangkan efisiensi penggunaan ruang

mengakibatkan pengaturan peletakan barang akan menjadi lebih sulit. Selain itu,

saat terjadi penempatan ulang pada barang dalam gudang, belum tentu disertai

dengan dokumentasi yang baik akan tempat dan posisi peletakan yang baru.

Akibatnya dapat terjadi kehilangan barang baik karena tercecer dalam gudang

atau karena ulah pegawai yang tidak bertanggungjawab.

Pada proses pengeluaran barang, penempatan dan perubahan posisi barang yang

kurang terdokumentasi dan terkontrol dengan baik. Hal ini menyebabkan barang

harus dicari terlebih dahulu. Apabila pencarian dilakukan oleh pegawai yang

tidak terlibat dalam proses penempatan atau pemindahan barang akan

menyebabkan kegiatan pengeluaran barang menjadi tidak efisien.

1.1. PERMASALAHAN

Permasalahan yang dikaji adalah berkaitan dengan permasalahan proses bisnis

Toko PK DATALIMA. Dalam hal ini karena ketidakefisienan proses

inventarisasi pada toko ini maka menyebabkan proses bisnis tidak berjalan secara

maksimal. Maka dengan pengajuan proposal aplikasi inventoryi ini, diharapkan

Page 8: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

permasalahan tersebut dapat berkurang sehingga proses bisnis toko tersebut dapat

berjalan dengan baik dan maksimal sesuai dengan harapan pemiliknya.

1.2. MAKSUD DAN TUJUAN

Hasil pengajuan proposal ini diharapkan dapat memberikan sebuah solusi sistem

inventory kepada Toko PK DATALIMA yang dapat mempermudah pencatatan

pemasukan, pengeluaran, pencarian, dan penyediaan laporan inventory. Dengan

mudahnya pencatatan laporan inventory tersebut, maka diharapkan pula proses

bisnis dari Toko PK DATALIMA dapat lebih baik sehingga keuntungan (profit)

penjualan dapat meningkat.

1.3. RUANG LINGKUP PEMBAHASAN

Dalam proposal ini terdapat batasan-batasan, diantaranya:

a. Sales Data, pencatatan data penjualan barang,

b. New Orders, pencatatan pemesanan barang baru,

c. Liquidation, pencatatan likuidasi/ penghapusan barang,

d. New Item, pengaturan barang baru,

e. Update Price, pembaharuan harga,

f. Financial, Information, pencatatan informasi finansial toko,

g. Database, database yang digunakan adalah database ber-extensi DAT (.dat).

Database ini digunakan untuk memudahkan pengguna karena tidak harus

meng-install software pendukung database.

h. Perangkat lunak pengembang aplikasi adalah Java Development Kit (JDK

v1.6.11), dan Java Creator (J-Creator).

i. Sistem operasi yang digunakan adalah Windows Vista Home Premium

Genuin.

1.4. SISTEMATIKA PENYUSUNAN PROPOSAL

Propsal ini secara keseluruhan terdiri dari tiga bab, dimana secara garis besar

masing-masing bab membahas hal berikut:

BAB I Pendahuluan: berisi latar belakang, permasalahan, maksud

dan tujuan, ruang lingkup pembahasan, dan sitematika

Page 9: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

penyusunan proposal.

BAB II Tinjauan Pustaka: berisi tentang teori-teori dasar yang

relevan berguna untuk menyelesaikan persoalan yang dibahas.

BAB III Metodologi: berisi tentang pembahasan mengenai metode apa

yang dipakai dalam perancangan aplikasi yang diajukan.

BAB IV Aplikasi dan Pembahasannya: berisi tentang analisis

aplikasi yang meliputi analisis kode, analisis class, method,

dan file-file pendukungnya, serta running dan interface

aplikasi.

BAB V Kesimpulan dan Saran: berisi kesimpulan yang mencakup

bebarapa hal penting pada hasil pembahasan sistem, dan

saran-saran yang diajukan bagi penyempurnaan proposal atau

sistem.

Page 10: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

Data Storage

BAB II TINJAUAN PUSTAKA

2.1. PERANCANGAN SISTEM

Dalam melakukan perancangan sistem, ada dua hal ada dua model yang

dipergunakan yaitu process modeling dengan menggunakan Data Flow Diagram

(DFD) dan data modeling dengan menggunakan Entity Relationship Diagram

(ERD). Untuk memperjelas detail dari proses dipergunakan Flowchart.

2.1.1. Data Flow Diagram (DFD)

DFD merupakan penggambaran sistem yang menggunakan bentuk simbol untuk

menggambarkan aliran data dalam suatu proses yang saling berhubungan

(McLeod, Jr., Schell, 1979). Beberapa simbol yang dipergunakan untuk

menggambarkan sistem antara lain:

External Entity, merupakan simbol yang mewakili

elemen yang berada di luar sistem, tetapi memiliki

hubungan interaksi dengan sistem.

Proses, merupakan simbol yang mewakili kegiatan untuk

mengubah data menjadi informasi atau masukan untuk

data lain.

Data Store, merupakan simbol yang mewakili tempat

penyimpanan dari data dan dapat dipergunakan bila

dibutuhkan.

Data flow, merupakan simbol yang mewakili arah aliran

data yang berasal dari satu proses, data store atau elemen

lingkungan menuju ke satu proses, data store atau

enviromental element lainnya.

Permodelan sistem dengan menggunakan DFD memiliki level yang menandai

penggambaran sistem mulai dari umum hingga detail. Level yang menandai

hubungan yang paling umum dan menggambarkan sistem secara keseluruhan

disebut context diagram. Dari context diagram selanjutnya dapat diuraikan ke

External Entity

1Proses

Page 11: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

Entity 1

dalam DFD level 0, 1, hingga level dimana proses dianggap cukup detail dan

jelas serta tidak bisa diuraikan lebih detail.

Dalam penggambaran proses, perlu diberikan penomoran, demikian juga dengan

level uraian dari proses tersebut. Contohnya proses dengan nomor “1“ pada DFD

level “0” bila diuraikan pada DFD level “1”, maka penomoran proses perlu

didahului dengan nomor proses yang diuraikan, yaitu “1.1”, “1.2”, “1.3” dan

seterusnya. Hal yang sama juga akan berlaku pada penomoran DFD level

selanjutnya.

2.1.2. Entity Relationship Diagram (ERD)

ERD merupakan data modeling yang dipergunakan untuk mendokumentasikan

data sistem. Dokumentasi dilakukan dengan cara menentukan kelompok data apa

saja yang terdapat dalam tiap entity dan bagaimana hubungan antara entity satu

dengan lainnya. Entity dapat berupa environmental element, resource dan

transaksi yang sangat diperlukan dan ddidokumentasikan dalam bentuk data.

Adapun simbol-simbol yang digunakan dalam ERD diantaranya adalah:

Entity, yang termasuk ke dalam entity antara lain

environmental element, resource, dan transaksi yang

sangat penting bagi sistem. Setiap entity memiliki

attribute merupakan karakteristik yang menandai atau

dimiliki oleh entity.

Relationship, menandakan hubungan diantara

entity,simbol relationship kadang diwakili sebagai

garis yang menghubungkan entitiy.

Selain istilah dan simbol di atas, terdapat juga istilah yang menggolongkan

jenis relasi yang dilakukan antar entity, yaitu:

a. Cardinality, menandai jumlah entity yang muncul dalam relasi dengan

entity lainnya. Nilai cardinality ada dua yaitu “1” atau “many”. Bentuk

relasi yang dapat dihasilkan ada tiga yaitu:

Page 12: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

One to One Relationship, merupakan ralis antara entity dimana tiap satu

entity hanya dapat berpasangan dengan satu entity pasangannya.

Contohnya adalah relasi antara departemen (entity1) dan kepala

departemen (entity2), dimana satu departemen hanya memiliki satu

kepala departemen, demikian sebaliknya. Tanda lingkaran1

One to Many Relationship, merupakan relasi antar entity dimana tiap satu

entity dapat berpasangan dengan lebih dari satu pasangan pada entity lain.

Contohnya pada relasi antara entity salesman (entity1) dan entity

penjualan (entity2). Satu penjualan hanya dapat dilakukan oleh satu

salesman, sementara salesman dapat terlibat dalam beberapa penjualan

sekaligus.

Many to many relationship, merupakan relasi antar entity dimana

beberapa entity dapat berpasangan dengan lebih dari satu pasangan pada

entity lain. Contohnya pada relasi antara barang (entity 1) dengan

penjualan (entity 2), satu barang dapat terlibat dalam beberapa penjualan

sementara penjualan dapat melibatkan beberapa barang pada transaksi

yang berbeda.

b. Mondatory, menandai apakah semua anggota entity harus berelasi dengan

anggota entity lain atau tidak. Bila semua anggota harus berelasi maka diberi

1 Tanda lingkaran berwarna hanya menunjukkan simbol cardinality ratio

Page 13: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

simbol “|” atau disebut juga mandatory/obligatory dan bila semua anggota

tidak harus berelasi maka diberi simbol “o” atau disebut non mandatory/non

obligatory. Contoh: mandatory entity 1 to entity 2 dengan one to one

relationship.

Dari gambar tersebut berarti semua anggota dari entity 1 harus berelasi

dengan anggota dari entitiy 2, dengan memberi simbol “|” di depan entity

2. Sementara dari entity 2 terhadap entity 1 diberi simbol “o” di depan

entity 1, berarti anggota dari entitiy 2 tidak harus berelasi seluruhnya

dengan anggota dari entitiy 1.

2.1.3. Flowchart

Merupakan diagram yang menggambarkan langkah dari sebuah proses.

Dengan menggunakan flowchart maka kerja dari suatu proses dapat dipantau

untuk pengembangan atau perbaikan. Beberapa simbol yang umum

dipergunakan sebagai berikut:

Gambar 1 Simbol Flowchart

Page 14: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

2.2. PEMBUATAN SISTEM

2.2.1. Database Manajemen Systems (DBMS)

Yang dimaksud dengan Database adalah semua data yang tersimpan dengan

menggunakan sumberdaya komputer di dalam organisasi, sementara DBMS

merupakan perangkat lunak aplikasi yang menyimpan struktur dari database,

data, dan relasi data dalam database termasuk form dan laporan yang

berhubungan dengan database (McLeod, Jr., Schell, 1979).

Dalam mendesain database, perlu ditentukan jenis server database untuk

mekanisme kerja yang baik. Oleh karena itu diperlukan pertimbangan akan

kelemahan dan keunggulan dari masing-masing jenis. Dalam kasus inventory

pada Toko PK DATALIMA ini, aplikasi inventory yang diajukan masih

menggunakan database standar yaitu database yang berekstensi dot DAT

(.dat), belum menggunakan software khusus pengolah database seperti

MySQL.

Adapun alasan mengapa masih menggunakan database standar adalah karena

melihat efisiensi penggunaan aplikasi. Jika menggunakan database standar

tersebut, pengguna tidak perlu repot-repot meng-install program MySQL/

Xampp yang cukup rumit penggunaannya. Disamping itu, database

berektensi DAT juga dapat langsung berjalan pada komputer lain yang

berbeda -- selama komputer tersebut terdapat program JDK.

2.2.2. Structure Query Language (SQL)

SQL merupakan bahasa yang memungkinkan pemakai untuk melakukan akses

data ke DBMS dan pemakai dapat menggambarkan data yang ingin diperoleh

(Hoffman, 2001). SQL juga memungkinkan pemakai untuk melakukan

manipulasi data (input, edit, dan delete). Dalam perkembangannya, SQL telah

menjadi bahasa standar dalam kegiatan manipulasi data pada database dari

berbagai vendor yang ada di dunia.

Page 15: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

2.2.3. MySQL

Merupakan produk dari MySQL AB yang merupakan database server yang

cepat, multi-theraded, multi user dan robust. Software MySQL memiliki dual

licenced dimana user dimana user dapat memilih untuk menggunakan

MySQL. Beberapa karakteristik dari MySQL adalah sebagai berikut:

a. Kode program ditulis dalam bahasa C dan C++

b. Fully multi-theraded, dapat menggunakan Multiple CPU juka tersedia

c. MySQL mendukung multi-platform hingga cross-platform. Beberapa

operating system dimana MySQL dapat berjalan dengan baik antara lain:

Linux, Mac OS X, NetBSD, Solaris 2.5, Windows 9.x, Me, NT, XP.

d. Previlege dan security yang terjamin karena pengiriman data antara client

dan server harus melalui enkripsi terlebih dahulu.

e. Mendukung database terdistribusi dengan kemampuan replikasi. Suatu

kemampuan dimana master server dapat menyimpan semua perubahan dari

database yang terjadi ke dalam binary log dan mengirimkannya ke slave

server untuk melakukan perubahan yang sama pada master server.

f. Memiliki banyak tipe kolom seperti float, double, char, varchar, text, BLOB,

date, time, datetime, timestamp, year, set, dan enum.

g. Mampu menangani database dalam jumlah besar hingga 60.000 tabel dan

5.000.000.000 baris record.

Page 16: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

BAB III METODOLOGI

3.1. METODOLOGI

Metoda adalah suatu cara atau teknik untuk melakukan sesuatu. Sedangkan

metodologi sendiri berarti sebuah cara yang sistematis untuk mengerjakan

sesuatu.

Adapun dalam proposal ini, model metodologi yang digunakan adalah Model

Sekuensial Linear (water fall). Model ini sering disebut juga dengan siklus

kehidupan klasik atau model water fall. Model ini mengusulkan sebuah

pendekatan kepada perkembangan software yang sistematik dan sekuensial yang

mulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode,

pengujian, dan pemeliharaan.

Gambar 2 Model Sikuensial Linear

3.1. DESAIN SISTEM

Disain sistem dimulai dengan penggambaran Data Flow Diagram dan Entity

Relationship Diagram kemudian dilanjutkan dengan pembuatan program

aplikasi.

3.2.1. Desain Data Flow Diagram (DFD)

Penggambaran sistem kerja diawali dengan Context diagram (diagram level 0),

sistem pemasukan barang dan pengeluaran barang yang akan dilanjutkan dengan

diagram level 1 dan level 2 untuk masing-masing sistem. Terdapat satu external

entity yang terlibat, yaitu administrator aplikasi.

Page 17: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

ADMIN

Pada diagram konteks level 0 ini, dapat dilihat bahwa admin sebagai user

mendapatkan input dan output sebagai bagian dari business function sistem

inventory ini. Kegiatan seperti pencatatan permintaan barang, permintaan data

stok barang, dan pengimputan barang baru (new item) dilakukan sepenuhnya

oleh admin program.

Diagram level 1 diatas merupakan dekomposisi dari diagram level 0 dimana

diagram tersebut menggambarkan proses umum bagaimana pengaturan input-

output barang dalam sistem inventory tersebut. Dan selanjutnya diagram level 1

ini akan di-dekomposisi lagi menjadi diagram level 2.

0INVENTORY

SystemApplication

Name, ID. Item, Quantity, Sales Price, Description

Gambar 3 Contex Diagram System Inventory

ADMIN

1Penambahan/

Penghapusan Data Barang

Inventory.dat

2Merubah Data dan Harga

Barang

ID. Item, Nama Item, Jumlah ItemHarga Item

Record ID. Item, Nama Item, Jumlah ItemHarga Item

ID. Item, Nama Item, Jumlah ItemHarga Item

Record ID. Item Baru, Nama Item Baru, Jumlah Item Baru

Harga Item

Gambar 3 Diagram Level 1

Page 18: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

Adapun diagram level 2 ini, menjelaskan mengenai fungsi-fungsi utama dari

aplikasi, diantaranya fungsi menambah stok barang, menambah barang baru

(item baru), menjual barang, menghapus barang, dan memperbaharui harga

barang:

ADMIN

1.1MenambahStok Barang Inventory.dat

ID. Item, Jumlah Barang

Record ID. Item, Jumlah Barang

ADMIN

1.2Menghapus Item

Barang Inventory.datID. Item, Record ID

ADMIN

1.3Menambah Item

Barang Inventory.dat

ID. Item, Nama Item, Deskripsi,

Harga Jual, Harga Penawaran

Jumlah

Record ID. Item, Nama Item,

Deskripsi, Harga Jual, Harga Penawaran

Jumlah

ADMIN

1.4Update Item

Inventory.dat

ID. Item, Harga Penjualan Baru,

Harga Penawaran Baru

Record ID. Item, Harga Penjualan

Baru, Harga Penawaran Baru

Page 19: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

BAB IV APLIKASI DAN PEMBAHASANNYA

4.1. ANALISIS BISNIS KNOWLAGE

Perkembangan Teknologi Informasi saat ini sangat cepat di segala bidang. Salah

satu hasil dari perkembangan teknologi adalah komputer. Komputer sebagai alat

dan sistem pengolahan data yang mempunyai peranan sangat penting dalam

memecahkan berbagai masalah yang sedang dihadapi. Adapun bidang-bidang

kegiatan atau aplikasi yang menggunakan komputer sebagai sarana pengolahan

data untuk membantu memecahkan pekerjaan yang sedang dihadapi antara lain :

bidang keuangan, bidang perbankan, bidang penjualan, dan lain-lain. Oleh

karena itu, dengan menggunakan komputer segala masalah yang berhubungan

dengan pengolahan data dapat diselesaikan dengan lebih mudah, lebih efisien,

cepat dan akurat.

Komputer sebagai alat dan sistem pengolahan data, memiliki beberapa kelebihan

atau keistimewaan dibandingkan dengan menggunakan tenaga manusia,

diantaranya : • Mampu menangani pengolahan data dalam jumlah banyak dan

beragam dalam waktu yang relative singkat. • Mempunyai tingkat ketelitian yang

sangat tinggi.

Pengolahan data inventory barang dengan menggunakan komputer merupakan

keharusan karena banyaknya data yang harus diolah dan informasi yang

dihasilkan harus cepat dan tepat. Tentu saja kalau hanya mengandalkan buku

catatan dan nota akan sering terjadi kesalahan. Jika selama ini data yang diolah

masih menggunakan cara manual sehingga dalam pengolahannya masih sering

terjadi kerangkapan data dan keakuratan informasi yang dihasilkannya masih

kurang karena pengecekan ulang terhadap kesalahan informasi masih sering

terjadi, maka hal itu tentu saja sangat tidak efisien waktu dan biaya juga tenaga

mengingat data yang harus diolah sangat banyak, sedangkan informasi yang

dibutuhkan haruslah tersedia tepat waktu. Maka dari itu, program khusus untuk

inventory serta penjualan barang diperlukan.

Page 20: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

4.2. ANALISIS BISNIS FUNCTION

Aktivitas inventory dijalankan dengan memanfaatkan fungsi-fungsi yang ada dan

tersedia dalam aplikasi. Dengan fungsi-fungsi tersebut diharapkan user dapat

mengunakannya untuk menyelesaikan proses bisnis dalam usahanya guna

memaksimalkan keuntungan bisnisnya. Fungsi-fungsi yang dimaksud

diantaranya:

1. Fungsi menyimpan dan menghapus data barang,

2. Fungsi menambah item barang,

3. Fungsi merubah data item barang,

4. Fungsi pendataan penjualan barang.

4.3. SOURCECODE

Sumber Sourcecodehttp://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=4260&lngWId=2

Nama Software : Inventory Delux v1.03

Pembuat : Kevin Dela Rosa

Tahun : 14 Juni 2004

Bahasa Pemrograman : Java (JDK)

Perkiraan Ukuran : 30,9 Kb

Sifat Software : freeware

4.4. ANALISIS SOURCECODE

4.4.1. ANALISIS CLASS PROGRAM

Aplikasi inventory ini memiliki beberapa file sourcecode diantaranya:

Company.java,

InventoryGui.java, dan

Item.java.

Page 21: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

4.4.2. ANALISIS FUNGSI PROGRAM

Adapun fungsi yang dipakai dalam program ini diantaranya yang pertama

fungsi menyimpan data masukan yang ditampung dalam array://Matrix that contains the tool tips for the Inventory Table

private String toolTips[][];

// Refreshes the Data that is displayed in the inventory Table

Object[][] tableData = new Object[numRows][columnNames.length];

Fungsi matematik dan perhitungan aplikasi. Terdapat dalam class

Company.java.import java.io.*;

import java.text.*;

import java.util.*;

class Company

{

private String fileName;

// Stores the name of the file for save purposes

private ArrayList currentItems;

// Stores the inventory; collection of Item objects

private double currentFunds;

// Represents how much money the company has to spend on inventory

public Company() throws IOException

// Default constructor; loads all the inventory data from the file

{

currentItems = new ArrayList();

fileName = "inventory.dat";

BufferedReader cin = new BufferedReader(new

FileReader(fileName));

// For reading from the file

currentFunds = Double.parseDouble(cin.readLine());

String name;

String description;

String id;

int amt;

double sale;

double order;

while((name = cin.readLine()) != null)

Page 22: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

{

description = cin.readLine();

StringTokenizer st = new

StringTokenizer(cin.readLine());

id = st.nextToken();

amt = Integer.parseInt(st.nextToken());

sale = Double.parseDouble(st.nextToken());

rder = Double.parseDouble(st.nextToken());

Item i = new Item(name, description,id,amt,sale,order);

currentItems.add(i);

// Adds the new Item to the list

}// end while

cin.close();

}// end constructor Company() throws IOException

public void openFile(String fileName) throws IOException

{

currentItems.clear();

BufferedReader cin = new BufferedReader(new

FileReader(fileName));

// For reading from the file

currentFunds = Double.parseDouble(cin.readLine());

String name;

String description;

String id;

int amt;

double sale;

double order;

while((name = cin.readLine()) != null)

{

description = cin.readLine();

StringTokenizer st = new

StringTokenizer(cin.readLine());

id = st.nextToken();

amt = Integer.parseInt(st.nextToken());

sale = Double.parseDouble(st.nextToken());

order = Double.parseDouble(st.nextToken());

Item i = new Item(name,

description,id,amt,sale,order);

currentItems.add(i);

// Adds the new Item to the list

}// end while

this.fileName = fileName;

cin.close();

}// end void openFile

public void sortByName()

Page 23: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

// Implements an insertion/selection sort on currentItems, sorting by

item name

{

ArrayList temp = new ArrayList(); // Empty ArrayList (for

sorting)

Item smallest; // Stores the smallest item (for sorting)

Item go; // Temporary Item

while(currentItems.size() > 0)

{

smallest = (Item) currentItems.get(0);

for(int c = 0; c < currentItems.size(); c++)

{

go = (Item) currentItems.get(c);

if(go.getName().toUpperCase().compareTo(

smallest.getName().toUpperCase()) <= 0)

{

smallest = go;

}// end if

}// end for

temp.add(smallest);

currentItems.remove(smallest);

}// end while

currentItems = temp;

}// end void sortByName

public void sortById()

// Implements an insertion/selection sort on currentItems, sorting by

ID number

{

ArrayList temp = new ArrayList(); // Empty ArrayList (for

sorting)

Item smallest; // Stores the smallest item (for sorting)

Item go; // Temporary Item

while(currentItems.size() > 0)

{

smallest = (Item) currentItems.get(0);

for(int c = 0; c < currentItems.size(); c++)

{

go = (Item) currentItems.get(c);

if(Integer.parseInt(go.getId()) <

Integer.parseInt(smallest.getId()))

{

smallest = go;

}

}// end for

temp.add(smallest);

currentItems.remove(smallest);

Page 24: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

}// end while

currentItems = temp;

}end void sortById

public boolean newSales(String id, int amt)

// Checks to see if id is in currentItems

// If it is not, returns false

// If it is, it sells amt Items if there are enough Items

// If amount is insufficient, returns false

// If all conditions are met it sells amt of Item and returns true

{

boolean checkID = false; // Determines if id is in the list

Item i = new Item();

for(int c = 0; c < currentItems.size(); c++)

{

if(id.equals(((Item) currentItems.get(c)).getId()))

{

checkID = true;

i = (Item) currentItems.get(c);

}// end if

}//end for

if(checkID)

{

if(amt > i.getAmount())

return false;

else

{

currentFunds += i.sellItem(amt);

return true;

}// end else

}// end if check ID

return false;

}// end boolean newSales

public boolean newOrders(String id, int amt)

//Checks to see if id is in currentItems

// If it is not, returns false

// If it is, it orders the passed amount if currentFunds is sufficient

// If money is insufficient, returns false

// If all conditions are met it orders amt of Item and returns true

{

boolean checkID = false;

Item i = new Item();

for(int c = 0; c < currentItems.size(); c++)

{

if(id.equals(((Item) currentItems.get(c)).getId()))

{

Page 25: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

checkID = true;

i = (Item) currentItems.get(c);

}

}// end for

if(checkID)

{

if(currentFunds < i.getOrderPrice(amt))

return false;

else

{

currentFunds -= i.orderItem(amt);

return true;

}// end else

}// end if

return false;

}// end boolean newOrders

public boolean liquidateItem(String id)

//Sells all of one item at order price and adds the money to

currentFunds

//returns true if successful, and false if id is not an Item

{

Item i = new Item();

Item go = new Item();

boolean isInList = false;

for(int c = 0; c < currentItems.size(); c++)

{

go = ((Item)currentItems.get(c));

if(id.compareTo(go.getId()) == 0)

{

i = go;

isInList = true;;

}// end if

}// end for

if(isInList)

{

currentFunds += i.liquidate();

currentItems.remove(i);

}// end if

return isInList;

//returns true if you can liquidate

}// end boolean liquidateItem

public boolean makeItem(String n, String d, String id, double s,

double o, int a)

// If id is not a current id in currentItems, creates new item with

passes data and returns true

Page 26: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

// Otherwise returns false

{

boolean isInList = false;

for(int c = 0; c < currentItems.size(); c++)

{

String temp = ((Item) currentItems.get(c)).getId();

if(id.equals(temp))

{

isInList = true;

}// end if

}

if(!isInList)

{

Item i = new Item(n,d,id,a,s,o);

if(currentFunds < i.getOrderPrice(a))

{

isInList = true;

}// end if

else

{

currentFunds -= a * o;

currentItems.add(i);

}// end else

}// end if

return !isInList;

// returns false if it is in the list, or

// if Company does not have enough money

}// end boolean makeItem

public void endProgram() throws IOException

// Saves the current data to the data file

{

BufferedWriter cout = new BufferedWriter(new

FileWriter(fileName));

String cf = new Double(currentFunds).toString();

cout.write(cf);

cout.newLine();

for(int c = 0; c < currentItems.size(); c++)

{

Item i = ((Item) currentItems.get(c));

cout.write(i.getName());

cout.newLine();

cout.write(i.getDescription());

cout.newLine();

cout.write(i.getId() + " " + i.getAmount() + " " +

i.getSalesPrice());

cout.write(" " + i.getOrderPrice());

Page 27: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

cout.newLine();

}// end for

cout.close();

}// end void endProgram

public boolean changeSalesPrice(String id, double np)

//If the passed id is in the list, the Item's sales price is set to np

and returns true

//Otherwise, returns false

{

boolean checkID = false;

Item i = new Item();

for(int c = 0; c < currentItems.size(); c++)

{

if(id.equals(((Item) currentItems.get(c)).getId()))

{

checkID = true;

i = (Item) currentItems.get(c);

}// end if

}// end for

if(checkID)

{

i.setSalesPrice(np);

return true;

}// end if checkID

return false;

//returns true if it succeeded, false if id not in list

//Please protect the double for negativity and zero

}// end boolean changeSalesPrice

public boolean changeOrderPrice(String id, double np)

//If the passed id is in the list, the Item's order price is set to np

and returns true

//Otherwise, returns false

{

boolean checkID = false;

Item i = new Item();

for(int c = 0; c < currentItems.size(); c++)

{

if(id.equals(((Item) currentItems.get(c)).getId()))

{

checkID = true;

i = (Item) currentItems.get(c);

}

}// end for

if(checkID)

Page 28: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

{

i.setOrderPrice(np);

return true;

}// end if

return false;

//returns true if it succeeded, false if id not in list

//Please protect the double for negativity and zero

}// end changeOrderPrice

public ArrayList getItems()

//Returns the current list of items

{

return currentItems;

}

public double getFunds()

//Returns the current amount of money being used for inventory

{

return currentFunds;

}

public int getNumItems()

//returns the current number of Items in currentItems

{

return currentItems.size();

}

public void setFunds(double f)

// Sets the company's funds to f

{

currentFunds = f;

}

public void setFileName(String name)

{

fileName = name;

}

}// end class Company

Fungsi mengolah, menampung Item barang. Fungsi ini terdapat dalam class

Item.java.public class Item

{

private String name;

private String description;

Page 29: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

private String idNumber;

private int amount;

private double salesPrice;

private double orderPrice;

public Item()

{

name = "";

description = "";

idNumber = "";

amount = 0;

salesPrice = 0.0;

orderPrice = 0.0;

}// end constructor Item()

public Item(String n, String d, String id, int a, double s, double o)

{

name = n;

description = d;

idNumber = id;

amount = a;

salesPrice = s;

orderPrice = o;

}// end constructor Item()

public String getName()

// returns name of the item

{

return name;

}

public String getDescription()

// returns the description of the item

{

return description;

}

public String getId()

// returns the ID number of the item

{

return idNumber;

}

public int getAmount()

{

return amount;

}

public double getSalesPrice()

{

return salesPrice;

Page 30: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

}

public double getSalesPrice(int a)

{

return salesPrice * a;

}

public double getOrderPrice()

{

return orderPrice;

}

public double getOrderPrice(int a)

{

return orderPrice * a;

}

public double orderItem(int orderAmount)

// Returns the cost of the order for the company

// Increases amount by orderAmount

{

amount += orderAmount;

return orderAmount * orderPrice;

}

public double sellItem(int sellAmount)

// Returns the cost of the order for the customer

// Decreases amount by sellAmount

{

amount -= sellAmount;

return sellAmount * salesPrice;

}

public double liquidate()

// Returns the price

{

return amount * orderPrice;

}

public void setSalesPrice(double a)

{

salesPrice = a;

}

public void setOrderPrice(double a)

{

orderPrice = a;

}

}// end class Item

Page 31: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

Main coding.

Sourcecode utama dimana pengaturan jalannya aplikasi diatur dalam

sourcode ini. Didalamnya terdapat fungsi-fungsi GUI (grafic user interface)

serta main program sebagai pusat kendali aplikasi. Terdapat dalam file

InventoryGUI.java.import java.io.*;

import java.util.*;

import java.text.*;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import javax.swing.filechooser.*;

public class InventoryGui extends JFrame implements ActionListener{

private Company companyObject; // Company Object

private String toolTips[][]; // Matrix that contains the tool

tips for the Inventory Table

private boolean boolSortName; // Determines if the Inventory

Table should be sorted by name or

by item number

public InventoryGui() throws IOException

// Default Constructor that initializes the components

{

initComponents();

}

public void refreshFinancialInformation()

// Refreshes the data that is displayed in financial information

{

DecimalFormat dollar = new DecimalFormat("$ 0.00");

String funds = dollar.format(companyObject.getFunds());

jLabelFinancialStatement.setText("The company currently holds "

+ funds + " in cash.");

}

public void refreshTable()

// Refreshes the Data that is displayed in the inventory Table

{

DecimalFormat dollar = new DecimalFormat("$ 0.00");

if(boolSortName)

companyObject.sortByName();

else

companyObject.sortById();

ArrayList temp = companyObject.getItems();

int numRows = temp.size();

Page 32: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

int newWidth = 650;

int newHeight = 0;

String[] columnNames = new String [] {"Name", "ID Item",

"Quantity", "Sales Price", "Order Price", "Descrpition"};

Object[][] tableData = new Object[numRows][columnNames.length];

toolTips = new String[numRows][columnNames.length];

for(int x = 0; x < numRows; x++)

{

Item i = (Item) temp.get(x);

String salesPrice = dollar.format(i.getSalesPrice());

String orderPrice = dollar.format(i.getOrderPrice());

tableData[x][0] = i.getName();

tableData[x][1] = i.getId();

tableData[x][2] = new Integer(i.getAmount());

tableData[x][3] = salesPrice;

tableData[x][4] = orderPrice;

tableData[x][5] = i.getDescription();

toolTips[x][0] = i.getName();

toolTips[x][1] = i.getId();

toolTips[x][2] = Integer.toString(i.getAmount());

toolTips[x][3] = salesPrice;

toolTips[x][4] = orderPrice;

toolTips[x][5] = i.getDescription();

}// end for

jTableInventory.setModel(new

javax.swing.table.DefaultTableModel(tableData,columnNames)

{

Class[] types = new Class [] {

java.lang.String.class,java.lang.String.class,

java.lang.String.class,java.lang.String.class,

java.lang.String.class, java.lang.String.class

};

boolean[] canEdit = new boolean [] {

false, false, false, false, false, false

};

public Class getColumnClass(int columnIndex) {

return types [columnIndex];

}

public boolean isCellEditable(int rowIndex, int

columnIndex)

Page 33: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

{

return canEdit [columnIndex];

}

});

newHeight = numRows * 16;

if(newHeight < 350)

newHeight = 350;

jTableInventory.setPreferredSize(new Dimension(newWidth,

newHeight));

refreshFinancialInformation();

}// end void refresh table

public void actionPerformed(ActionEvent evt)

// Handles the action events from the menus and buttons found on the

graphical user interface

{

String cmd = evt.getActionCommand();

if(cmd.equals("Sales"))

{

String itemNumber =

jTextFieldSalesItemNumber.getText();

try

{

jTextFieldSalesItemNumber.setText(null);

int quantity =

Integer.parseInt(jTextFieldSalesQuantity.getText());

if(quantity <= 0)

{

JOptionPane.showMessageDialog(this,

"Please only enter positive numbers.",

"Input Error",

JOptionPane.ERROR_MESSAGE);

}// end if

else if(!companyObject.newSales(itemNumber,

quantity)){

JOptionPane.showMessageDialog(this,

"Please enter a valid ID Item, or\nEnter

a valid value for the quantity of items

sold.","Input Error",

JOptionPane.ERROR_MESSAGE);

}// end else if

else{

JOptionPane.showMessageDialog(this,

"Sale Complete!", "Sales",

JOptionPane.INFORMATION_MESSAGE);

Page 34: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

}// end else

}// end try

catch(Exception E)

{

JOptionPane.showMessageDialog(this, "Please

enter valid values.", "Input

Error",JOptionPane.ERROR_MESSAGE);

}

jTextFieldSalesQuantity.setText(null);

refreshTable();

}// end if cmd.equals("sales")

if(cmd.equals("Order"))

{

String itemNumber = jTextFieldOrderItemNumber.getText();

jTextFieldOrderItemNumber.setText(null);

try

{

int quantity =

Integer.parseInt(jTextFieldOrderQuantity.getText());

if(quantity <= 0)

{

JOptionPane.showMessageDialog(this, "Please only

enter positive numbers.", "Input Error",

JOptionPane.ERROR_MESSAGE);

}

else if(!companyObject.newOrders(itemNumber, quantity))

{

JOptionPane.showMessageDialog(this, "Please

enter a valid ID Item, or\nEnter a valid value

for the quantity of items ordered.", "Input

Error", JOptionPane.ERROR_MESSAGE);

}

else{

JOptionPane.showMessageDialog(this, "Order

Complete!", "Orders",

JOptionPane.INFORMATION_MESSAGE);

}

}// end try

catch(Exception E)

{

JOptionPane.showMessageDialog(this, "Please enter valid

values.", "Input Error", JOptionPane.ERROR_MESSAGE);

}

jTextFieldOrderQuantity.setText(null);

refreshTable();

}// end if

Page 35: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

if(cmd.equals("Liquidate"))

{

String itemNumber = jTextFieldlLiquidateItemNumber.getText();

jTextFieldlLiquidateItemNumber.setText(null);

if(!companyObject.liquidateItem(itemNumber))

{

JOptionPane.showMessageDialog(this, "Please enter a

valid ID Item", "Input Error",

JOptionPane.ERROR_MESSAGE);

}// end if

else

{

JOptionPane.showMessageDialog(this, "Item Liquidated!",

"Liquidation", JOptionPane.INFORMATION_MESSAGE);

}// end else

refreshTable();

}// end if

}// end class InventoryGUI

Page 36: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

4.4.3. INTERFACE APLIKASI

Berikut adalah interface dari aplikasi inventory Deluxe v 1.03. Dikarenakan

barang-barang yang dijual di Toko PK DATALIMA adalah barang elektronik

yang harganya tergantung pada kurs dolar amerika (USD), maka satuan harga

dinyatakan dalam USD.

Gambar 4 Inventory Delux v 1.03

Gambar 5 File and Tools's Contents

Menu/ Fungsi Aplikasi

Input Data

Preview Data

Page 37: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

Gambar 6 Liquidation

Gambar 7 New Item

Page 38: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

Gambar 8 Update Price

4.1.

Page 39: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

BAB V PENUTUP

5.1. PENUTUP

Demikian pembahasan mengenai aplikasi inventory yang akan ditawarkan pada

Toko PK DATALIMA. Tahap selanjutnya adalah penandatangan proposal

(kontrak) dengan toko tersebut. Tapi sebelumnya, jika customer menerima, maka

akan diadakan pertemuan selanjutnya untuk membicarakan kontrak secara

menditail lagi. Dan selanjutnya baru penandatanganan proposal.

Adapun untuk maintenance aplikasi, akan diberikan waktu selama enam bulan.

Dalam masa itu, apabila ada kendala, kebingunan, atau bug pada aplikasi maka

customer dapat meminta kepada pihak.

5.2. SARAN

Penulis menyadari bahwa pembahasan di atas masih jauh dari sempurna. Untuk

itu penulis sangat mengharapkan saran dari pembaca atau pihak yang berkait

sebagai bahan koreksi penulis dalam menyusun proposal yang lebih baik lagi di

masa yang akan datang.

Page 40: KATA -    Web viewdkk yang telah berbaik hati memberikan aplikasi inventory ini untuk dijadikan bahan makalah ... waktu dan biaya juga tenaga ... bahwa pembahasan di atas

DAFTAR PUSTAKA

Budi, Satia, Gregorius dkk. PEMBUATAN SISTEM INVENTORY DENGAN

PENGATURAN PELETAKAN DAN VISUALISASI POSISI BARANG

PADA UD ANEKA MAINAN. 2004: SURABAYA.

http://www.ar.itb.ac.id/hanson/?p=93

Pressman, Roger S, Software Engineering : A Practitioner’s Approach, McGraw-

Hill Companies, Inc. 1997.

Andri. SOFTWARE INVENTORY. 2008. - http://deteksi.org/31302_software_inventory.html ( 18 Nov 08)