Anda di halaman 1dari 69

PEMBUATAN SISTEM INVENTORY DENGAN PENGATURAN PELETAKAN DAN VISUALISASI POSISI BARANG PADA UD ANEKA MAINAN

Oleh: Gregorius Satia Budhi Liliana Arief Abadi Oviliani Yenty Yuliana

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS KRISTEN PETRA SURABAYA 2004

LAPORAN PENELITIAN NO: 04/Pen/Informatika/I/2004

PEMBUATAN SISTEM INVENTORY DENGAN PENGATURAN PELETAKAN DAN VISUALISASI POSISI BARANG PADA UD ANEKA MAINAN

Oleh: Gregorius Satia Budhi Liliana Arief Abadi Oviliani Yenty Yuliana

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS KRISTEN PETRA SURABAYA 2004

LEMBAR IDENTITAS DAN PENGESAHAN LAPORAN HASIL PENELITIAN

1. a. Judul Penelitian

b. Nomor Penelitian c. Jalur Penelitian 2. Ketua Peneliti a. Nama lengkap dan Gelar b. Jenis Kelamin c. Pangkat/Golongan/NIP d. Bidang Ilmu yang diteliti e. Jabatan Akademik f. Fakultas/Jurusan g. Universitas 3. Anggota Tim Peneliti (I) a. Nama lengkap dan Gelar b. Jenis Kelamin c. Pangkat/Golongan/NIP d. Bidang Ilmu yang diteliti e. Jabatan Akademik f. Fakultas/Jurusan g. Universitas Anggota Tim Peneliti (II) a. Nama lengkap dan Gelar b. Jenis Kelamin c. Pangkat/Golongan/NIP d. Bidang Ilmu yang diteliti e. Jabatan Akademik f. Fakultas/Jurusan g. Universitas Anggota Tim Peneliti (III) a. Nama lengkap dan Gelar b. Jenis Kelamin c. Pangkat/Golongan/NIP d. Bidang Ilmu yang diteliti e. Jabatan Akademik f. Fakultas/Jurusan g. Universitas

: PEMBUATAN SISTEM INVENTORY DENGAN PENGATURAN PELETAKAN DAN VISUALISASI POSISI BARANG PADA UD ANEKA MAINAN : 04/Pen/Informatika/I/2004 : I/ II/ III/ IV : : : : : : Gregorius Satia Budhi, ST.,MT. Laki-laki Asisten Ahli/ IIIB/ 02030 Sistem Informasi Asisten Ahli Fakultas Teknologi Industri/ Teknik Informatika : Universitas Kristen Petra : : Liliana, ST. : Perempuan : Asisten Ahli/ IIIA/ 03024 : Sistem Informasi : : Fakultas Teknologi Industri/ Teknik Informatika : Universitas Kristen Petra : : Arief Abadi : Laki-laki : : Sistem Informasi : : Fakultas Teknologi Industri/ Teknik Informatika : Universitas Kristen Petra : : Oviliani Yenty Yuliana, ST., MSCIS : Perempuan : Pembina/ IVA/ 94014 : Sistem Informasi : Lektor : Fakultas Ekonomi/ Program Studi Akuntansi : Universitas Kristen Petra

iii

4. Lokasi Penelitian : 5. Kerjasama dengan Instansi lain Nama Instansi : Alamat : 6. Tanggal Penelitian : 7. Biaya :

Surabaya Januari 2004 s/d Juli 2004 -

Surabaya, 31 Juli 2004

Mengetahui, Ketua Jurusan/ Ka. Unit

Ketua Peneliti

Djoni Haryadi Setiabudi, M.Eng. NIP. 85-009

Gregorius Satia Budhi, ST.,MT. NIP. 02-030

Menyetujui, Dekan Fakultas Teknologi Industri

Oegik Soegihardjo, M.Sc., MA NIP. 97-007

iv

ABSTRAK
Sistem inventory pada UD Aneka Mainan saat ini masih bersifat manual. Jenis dan jumlah barang yang terus bertambah dengan arus keluar dan masuk barang yang semakin meningkat. Hal tersebut menyebabkan kontrol terhadap inventory semakin sulit dilakukan. Selain itu keterbatasan ruang dan adanya aturan peletakan juga membutuhkan efisiensi dalam penentuan lokasi barang. Untuk meningkatkan kemampuan dalam melakukan kontrol terhadap persediaan dan untuk meningkatkan efisiensi penggunaan lokasi diperlukan pengembangan sistem baru. Sistem yang baru dikembangkan dengan menggunakan Borland Delphi 6 dan MySQL sebagai database sistem. Untuk pengaturan peletakan barang dipergunakan backtracking. Untuk melengkapi sistem, diberikan visualisasi posisi barang dengan menggunakan OpenGL. Penelitian ini menghasilkan suatu aplikasi program yang dapat melakukan kontrol terhadap persediaan dan memberikan laporan persediaan terbaru. Aplikasi program juga mendukung pengaturan peletakan dan mampu memvisualisasikan lokasi persediaan dalam bentuk tiga dimensi. Pengujian sistem dilakukan oleh programmer dan user. Dari hasil pengujian oleh user diperoleh nilai 4,61 untuk manfaat, 3,83 untuk interface dan kinerja sebesar 3,88 dari nilai maksimum sebesar 5. Secara keseluruhan sistem memiliki nilai rata-rata sebesar 3,95 yang berarti cukup baik. Dari hasil pengujian tersebut dapat dikatakan bahwa sistem layak untuk dipergunakan. Kata kunci: Sistem inventory

ABSTRACT
At present, Inventory system UD Aneka Mainan still uses a manual system. Type and amount of goods at UD Aneka Mainan are progressively increasing. Moreover, flows of goods that enter and exit to and from warehouse are also increasing. They cause the control of inventory become more difficult. Besides, limitation of space and rules of placing goods needs efficiency in determining goods location. To increase the controlling ability of supply and increase efficiency of space usage needed a new system development. New system developed using Borland Delphi 6 and MySQL as a database system. Location arrangement of goods uses backtracking methods. Visualization of goods location uses OpenGL Research results are a program application able to conduct the control of supplies and give the updated supply report. Program application also support the location arrangement and visualize position of supplies in three dimensions. Systems test was done by programmer and user. The result test from user obtained value 4,61 for the benefit, 3,83 for the interface and 3,875 for performance from maximum value of 5. As a whole system has the average value equal to 3,95. It means that it is good enough. From the test result can be said that system is comp0ntent to be utilized. Keyword: Inventory system

vi

KATA PENGANTAR
Penulis mengucapkan syukur kepada Tuhan Yang Maha Esa atas terselesaikannya penelitian ini. Penulis sadar bahwa hasil penelitian ini masih jauh dari sempurna, karena itu penulis mengharapkan saran dan kritik yang membangun dari berbagai pihak demi perbaikan dari penelitian ini. Penulis berharap semoga penelitian ini dapat memberikan kontribusi bagi perkembangan bidang ilmu pengolahan citra digital dan teknologi perangkat lunak pada umumnya. Akhir kata, penulis mengucapkan terima kasih kepada semua pihak yang tidak dapat disebutkan satu persatu yang telah membantu terselesaikannya penelitian ini

Surabaya, Juli 2004 Penyusun

vii

DAFTAR ISI
LEMBAR IDENTITAS DAN PENGESAHAN.................................................... iii ABSTRAK .............................................................................................................. v ABSTRACT........................................................................................................... vi KATA PENGANTAR .......................................................................................... vii DAFTAR ISI........................................................................................................ viii DAFTAR GAMBAR .............................................................................................. x DAFTAR TABEL................................................................................................. xii BAB 1. PENDAHULUAN ..................................................................................... 1 1.1 1.2 1.3 1.4 1.5 Latar Belakang ........................................................................................ 1 Permasalahan .......................................................................................... 1 Tujuan dan Manfaat Penelitian ............................................................... 1 Ruang Lingkup Pembahasan................................................................... 2 Sistematika Penyusunan Laporan ........................................................... 2

BAB 2. TINJAUAN PUSTAKA ............................................................................ 4 2.1 Perancangan Sistem ................................................................................ 4 Data Flow Diagram (DFD) ............................................................ 4 Entity Relationship Diagram (ERD)............................................... 5 Flowchart ........................................................................................ 8

2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7

Pembuatan Sistem ................................................................................... 8 Database Management Systems (DBMS)....................................... 8 Structure Query Language (SQL)................................................. 10 MySQL .......................................................................................... 13 Borland Delphi .............................................................................. 13 ActiveX Data Object (ADO) ......................................................... 17 OpenGL ......................................................................................... 18 Backtracking ................................................................................. 22

BAB 3. METODE PENELITIAN ........................................................................ 24 3.1 3.2 Metodologi Penelitian ........................................................................... 24 Analisis Sistem Lama............................................................................ 25

viii

3.2.2 3.2.3 3.3

Analisis Permasalahan .................................................................. 28 Analisis Kebutuhan ....................................................................... 29 Desain Sistem........................................................................................ 29 Desain Data Flow Diagram (DFD) .............................................. 29 Desain Entity relationship Diagram .............................................. 32 Desain Pengaturan Peletakan ........................................................ 32

3.3.1 3.3.2 3.3.3

BAB 4. HASIL PENELITIAN DAN PEMBAHASAN ....................................... 40 4.1 4.2 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.3 Implementasi Aplikasi .......................................................................... 40 Pengujian Aplikasi ................................................................................ 40 Pemasukan Barang Pada Subblok Kosong ................................... 40 Pemasukan Dengan Adanya Barang Sejenis................................. 44 Pemasukan Barang Secara Langsung............................................ 47 Pengeluaran Barang Dengan Metode FIFO.................................. 49 Pengeluaran Barang Tanpa Metode FIFO .................................... 51 Pengujian oleh User .............................................................................. 53

BAB 5. KESIMPULAN DAN SARAN ............................................................... 55 5.1 5.2 Kesimpulan ........................................................................................... 55 Saran...................................................................................................... 55

DAFTAR PUSTAKA ........................................................................................... 57

ix

DAFTAR GAMBAR
Gambar 2.1 External entity ..................................................................................... 4 Gambar 2.2 Proses .................................................................................................. 4 Gambar 2.3 Data Store ........................................................................................... 4 Gambar 2.4 Data Flow............................................................................................ 5 Gambar 2.5 Entity ................................................................................................... 6 Gambar 2.6 Relationship......................................................................................... 6 Gambar 2.7 One to One Relationship ..................................................................... 6 Gambar 2.8 One to Many Relationship................................................................... 7 Gambar 2.9 Many to Many Relationship ................................................................ 7 Gambar 2.10 Mandatory ......................................................................................... 7 Gambar 2.11 Simbol Flowchart............................................................................ 10 Gambar 2.12 IDE Delphi ...................................................................................... 15 Gambar 2.13 Arsitektur MDAC............................................................................ 18 Gambar 2.14 Hasil Penggambaran Bidang Segitiga dan Segiempat .................... 21 Gambar 2.15 Gambar Contoh Pengunaan Perintah Glulookat ............................. 22 Gambar 2.16 Algoritma Backtracking .................................................................. 23 Gambar 3.1 Kondisi Penyusunan Barang dalam Gudang..................................... 28 Gambar 3.2 Context Diagram Sistem Inventory................................................... 31 Gambar 3.3 Data Flow Diagram Sistem Inventory Level 0 ................................. 33 Gambar 3.4 Data Flow Diagram level 1 Proses Pemasukan Barang .................... 34 Gambar 3.5 Data Flow Diagram Level 1 Proses Pengeluaran Barang................. 35 Gambar 3.6 Data Flow Diagram level 1 Proses Periksa Stok Fisik Barang ........ 35 Gambar 3.7 Data Flow Diagram level 1 Membuat Laporan dan Informasi......... 36 Gambar 3.8 Conceptual Entity relationship Diagram Sistem Inventory............... 37 Gambar 3.9 Physical Entity relationship Diagram Sistem Inventory ................... 38 Gambar 3.10 Flowchart Prosedur Pengaturan Peletakan ..................................... 39 Gambar 4.1 Pemasukan Data Pengujian I............................................................. 41 Gambar 4.2 Form Konfirmasi untuk Pengaturan Peletakan ................................. 42 Gambar 4.3 Form Visualisasi Hasil Pengaturan Peletakan .................................. 42 Gambar 4.4 Hasil Perbandingan dalam Pengujian I Pengaturan Peletakan.......... 43

Gambar 4.5 Pemasukan Data Pengujian II ........................................................... 45 Gambar 4.6 Hasil Perbandingan dalam Pengujian II Pengaturan Peletakan ........ 46 Gambar 4.7 Solusi Hasil Pengujian III ................................................................. 48 Gambar 4.8 Solusi Hasil Pencarian Barang 001B00001 ...................................... 49 Gambar 4.9 Pengeluaran Barang Pengujian IV .................................................... 50 Gambar 4.10 Konfirmasi Pengeluaran Secara FIFO ............................................ 50 Gambar 4.11 Daftar Pengeluaran Barang Secara FIFO........................................ 51 Gambar 4.12 Pengisian Pengeluaran Barang Pengujian V ................................... 52 Gambar 4.13 Daftar Pengeluaran Barang Pengujian V ........................................ 52

xi

DAFTAR TABEL
Tabel 4.1. Daftar Subblok Pengujian I...................................................................40 Tabel 4.2. Daftar Barang Masukan Pengujian I.....................................................41 Tabel 4.3. Solusi Hasil Pengujian I........................................................................43 Tabel 4.4. Daftar Subblok Pengujian II .................................................................44 Tabel 4.5. Daftar Barang Masukan Pengujian II....................................................45 Tabel 4.6. Daftar Solusi Hasil Pengujian II ...........................................................46 Tabel 4.7. Daftar Subblok Pengujian II .................................................................47 Tabel 4.8. Daftar Barang Masukan Pengujian III ..................................................47 Tabel 4.9. Daftar Barang Pengeluaran Pengujian IV.............................................49 Tabel 4.10. Daftar Perubahan Subblok Pengujian IV ............................................51 Tabel 4.11. Daftar Barang Pengeluaran Pengujian V ............................................51 Tabel 4.12. Data Responden ..................................................................................53 Tabel 4.13. Penjelasan penilaian............................................................................53 Tabel 4.14. Hasil Akumulasi Angket.....................................................................54

xii

BAB 1. PENDAHULUAN

1.1 Latar Belakang Dalam sistem inventory UD Aneka Mainan, 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 bukan merupakan hal mudah untuk dilaksanakan. Hal ini semakin sulit mengingat pencatatan gudang yang masih bersifat manual. Untuk proses pemasukan barang, ruang gudang yang terbatas, adanya aturan peletakan dan kurang mempertimbangkan efisiensi penggunaan ruang. Akibatnya 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.2 Permasalahan Permasalahan yang dihadapi dan diharapkan dapat diselesaikan melalui penelitian ini adalah sistem yang mampu memberikan saran untuk pengaturan peletakan barang yang jenisnya sangat banyak dalam ruang dengan memetakan posisi/lokasi dari barang tersebut. Untuk lebih memudahkan pemakai dalam menggunakan sistem dan agar pemakai dapat mengerti solusi yang diberikan, maka sistem perlu dilengkapi visualisasi yang mendekati keadaan gudang sebenarnya berupa tampilan tiga dimensi.

1.3 Tujuan dan Manfaat Penelitian Hasil penelitian ini diharapkan dapat menghasilkan sistem inventory

yang dapat mempermudah pencatatan pemasukan, pengeluaran, pencarian, dan penyediaan laporan inventory. Sistem dibuat juga diharapkan mampu memberi solusi untuk pengaturan peletakan barang dalam ruang dan visualisasi posisi barang.

1.4 Ruang Lingkup Pembahasan Dalam penelitian ini terdapat batasan, yaitu: Pencatatan barang keluar dan pembuatan surat jalan. Pencatatan barang masuk. Pencatatan barang hilang dari hasil perbandingan stock opname dengan data pada sistem dan adjusment dari barang hilang. Laporan-laporan, seperti: stock global, laporan pengeluaran, pemasukan barang, dan laporan history barang. Pemberian solusi pengaturan peletakan, Sistem dapat memberikan solusi kepada pemakai tempat barang yang baru masuk dalam gudang dengan mempertimbangkan ukuran, aturan peletakan gudang dan maksimum tumpukan. Dokumentasi perubahan lokasi dan posisi dari barang. Menyediakan informasi lokasi dan jumlah barang dalam gudang. Visualisasi posisi barang dalam gudang. Database yang dipergunakan adalah Mysql 4.0.14-nt. Perangkat lunak untuk pengembangan adalah Borland Delphi 6. Visualisasi menggunakan OpenGL. Sistem operasi menggunakan Microsoft Windows Xp.

1.5 Sistematika Penyusunan Laporan Laporan penelitian ini secara keseluruhan terdiri dari lima bab, dimana secara garis besar masing-masing bab membahas hal-hal sebagai berikut: BAB 1 Pendahuluan: berisi latar belakang, permasalahan, tujuan

penelitian, manfaat penelitian, ruang lingkup permasalahan, dan sistematika penyusunan laporan.

BAB 2

Tinjauan Pustaka: membahas tentang teori-teori dasar yang relevan yang digunakan untuk memecahkan persoalan yang dibahas pada penelitian ini.

BAB 3

Metode Penelitian: membahas tentang metode penelitian yang dilakukan dalam perancangan aplikasi.

BAB 4

Hasil Penelitian dan Pembahasan: berisi tentang hasil dari penelitian, berupa aplikasi yang telah dikembangkan beserta dengan pengujian aplikasi tersebut.

BAB 5

Kesimpulan dan Saran: berisi kesimpulan yang mencakup beberapa hal penting pada hasil yang didapat dari penelitian dan saran-saran yang diajukan bagi penyempurnaannya.

BAB 2. TINJAUAN PUSTAKA

2.1 Perancangan Sistem Dalam melakukan perancangan sistem, 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 External Entity elemen yang berada di luar sistem, tetapi memiliki hubungan interaksi dengan sistem. Gambar 2.1 External entity

Proses, merupakan simbol yang mewakili kegiatan untuk mengubah data menjadi informasi atau

Proses

masukan untuk data lain. Gambar 2.2 Proses

Data Store, merupakan simbol yang mewakili Data store tempat penyimpanan dari data dan dapat

dipergunakan bila dibutuhkan. Gambar 2.3 Data Store

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. Gambar 2.4 Data Flow

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 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 data sistem. modeling yang dipergunakan dengan untuk cara

mendokumentasikan

Dokumentasi

dilakukan

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 didokumentasikan dalam bentuk data. Simbol-simbol yang dipergunakan dalam ERD antara lain:

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. Gambar 2.5 Entity Relationship, menandakan hubungan diantara entity, simbol relationship kadang diwakili sebagai garis yang menghubungkan entitiy. Gambar 2.6 Relationship

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 : One to one relationship, merupakan relasi 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 (Lihat Gambar 2.7).
Entity1
Relation

Entity2

Gambar 2.7 One to One Relationship

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 (entity 1) dan entity penjualan (entity 2). Satu penjualan hanya dapat dilakukan oleh satu

salesman sementara salesman dapat terlibat pada beberapa penjualan (Lihat Gambar 2.8).
Entity2

Entity1
Relation

Gambar 2.8 One to Many Relationship

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 (Lihat Gambar 2.9).
Entity2

Entity1
Relation

Gambar 2.9 Many to Many Relationship b. Mandatory, menandai apakah semua anggota entity harus berelasi dengan anggota entity lain atau tidak. Bila semua anggota harus berelasi maka diberi 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 (Lihat Gambar 2.10).
Entity1
Relation

Entity2

Gambar 2.10 Mandatory

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 dapat dilihat pada Gambar 2.11.

2.2 Pembuatan Sistem 2.2.1 Database Management Systems (DBMS) Database ditujukan pada 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. Secara umum, ada dua tipe relational database berdasarkan server yang sering dipakai yaitu: a. Remote Database Servers, berada pada mesin yang terpisah dengan client bahkan data juga dapat terpisah pada beberapa server lain yang berbeda jenisnya. Walaupun database server memiliki perbedaan cara dalam peletakan data, mereka memiliki logical interface yang umum pada client yaitu Structure Query Language (SQL). Karena akses dilakukan dengan SQL, maka kadang juga disebut dengan SQL server atau Remote Database Management System (RDBMS). Setiap SQL server memiliki sintaks tersendiri untuk SQL. Contoh dari SQL server antara lain: Interbase, Oracle, Sysbase, Infomix, Microsoft SQLserver, dan MySQL. b. Local databases, berada pada satu mesin atau Local Area Network (LAN) yang

sama. Umumnya memiliki API (Application Programming Interface) yang sama. Bila memiliki beberapa user maka local database sering menggunakan mekanisme file-based locking (mengunci tabel yang sedang digunakan dari akses user lain), oleh karena itu sering disebut juga sebagai file-based database. Contoh dari local database adalah Paradox, dBASE, Foxpro dan Access. Aplikasi yang menggunakan local database, sering juga disebut sebagai single-tiered application karena aplikasi dari database membagi sistem file yang sama. Sementara aplikasi yang menggunakan remote database server disebut sebagai two-tiered applications atau multi-tiered applications karena aplikasi dan database beroperasi pada sistem yang berbeda. Beberapa pertimbangan dalam menentukan jenis database adalah sebagai berikut: a. Jumlah user pengguna database, dengan menggunakan remote database, dapat dilakukan akses oleh beberapa user sekaligus melalui mekanisme yang disebut transaction. Sementara local database ada juga yang menyediakan transaction, tetapi lebih banyak yang menggunakan filebased locking mechanism. Dan beberapa tidak mendukung multi-user sama sekali. b. Jumlah data yang akan disimpan oleh database. Remote database dapat menyimpan lebih banyak data daripada local database. Beberapa remote database didesain untuk warehousing dari data dalam jumlah besar sementara yang lainnya dioptimasikan untuk hal lain seperti kecepatan update. c. Perfoma dari database, local database umumnya lebih cepat dari remote database server, karena server berada dalam sistem yang sama dengan aplikasi database. d. Biaya dari penggunaan database, local database memiliki biaya yang jauh lebih rendah dari remote database yang perlu menyediakan server yang terpisah atau biaya untuk operasional server seperti penggunaan jaringan internet atau satelit. e. Pengembangan database, seiring dengan kebutuhan yang terus berubah,

10

tidak menutup kemungkinan bahwa suatu saat perlu dilakukan perubahan atau pengembangan dari database yang telah ada.

Terminator, menandai awal atau akhir dari suatu proses Decision, untuk dalam proses menandai percabangan

Input/output, menggambarkan adanya input atau output dari sistem Process, menggambarkan dilakukan proses yang

Flow, menggambarkan arah urutan proses yang dilakukan Preparation, simbol untuk dimulainya proses looping Predefined process, untuk menggambarkan proses yang telah dimasukkan sebelumnya Stored procedure, simbol untuk mewakili proses yang dilakukan pada data yang tersimpan, seperti insert, delete dan update Gambar 2.11 Simbol Flowchart

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.

11

Pada subbab ini akan diberikan penjelasan tentang dasar penggunaan dari perintah SQL. Tabel dan data yang akan dipergunakan sebagai contoh dapat dilihat pada Tabel 2.1 untuk Tabel barang dan Tabel 2.2 untuk tabel kelompok.

Tabel 2.1. Contoh Tabel Barang


ID_Barang 1000000012 2003002001 4421222236 2131244532 Kode_Umum KT278-220 JTC9-84788 YUBERUA 82-CTCH Nama_Barang Arbalest Rancing Car Toy Gun Buldozer ID_Kelompok K0001 K0003 K0002 K0003

Tabel 2.2. Contoh Tabel Kelompok


ID_Kelompok Nama_Kelompok K0001 K0002 K0003 Robot Pistol Mobil

Beberapa Perintah yang umum dipergunakan dalam SQL adalah sebagai berikut: a. SELECT, merupakan perintah untuk melakukan pengambilan data yang berada dalam tabel. Bila ingin melakukan pengambilan terhadap data yang berada dalam: Tabel barang secara keseluruhan
SELECT * from barang

Tabel barang untuk field ID Barang dan Kode Umum saja


SELECT id_barang,kode_umum FROM barang

b. Conditional, merupakan perintah untuk mengambil data dengan kondisi tertentu, menggunakan WHERE dan relational operator seperti <, > , =, <>. Berikut pengambilan data barang dengan ID_barang 1000000012.
SELECT * from barang WHERE id_barang=1000000012.

c. Joins, merupakan bentuk perintah untuk melakukan pengambilan data dari dua atau lebih tabel sekaligus. Berikut adalah cara pangambilan untuk field id_barang, nama_barang yang berasal dari tabel barang dan nama kelompoknya yang berasal dari tabel kelompok.

12

SELECT barang.id_barang, barang.nama_barang, kelompok.Nama_kelompok FROM barang, kelompok WHERE barang.id_kelompok=kelompok.id_kelompok

d. Aggregate Function seperti Sum(), Count(), Avg(), Max(), Min(). Bila ingin mengetahui berapa jumlah id_barang dengan id_kelompok tertentu pada tabel barang maka perintah yang diberikan :
SELECT COUNT(id_kelompok) FROM barang WHERE id_kelompok=K0002

Hasil dari perintah ini adalah 2 yang berarti terdapat 2 barang dengan id_kelompok K0002. e. CREATE TABLE, perintah ini dipergunakan untuk membuat sebuah tabel baru dengan field-nya. Contoh: untuk membuat sebuah tabel supplier dengan field Id_supplier dan nama_supplier diberikan perintah sebagai berikut:
CREATE TABLE supplier (id_supplier char(5), nama_supplier varchar(30))

f.

ALTER TABLE, perintah ini berfungsi melakukan perubahan pada struktur tabel (bukan isi tabel). Bila kita ingin menambahkan field telepon pada tabel supplier, maka perintah yang diberikan sebagai berikut:
ALTER TABLE supplier ADD (telepon varchar(25))

g. INSERT, merupakan perintah yang dipergunakan untuk menambahkan data pada tabel. Untuk menambahkan data supplier dengan nama Sinar Terang, maka perintah yang dipergunakan :
INSERT INTO supplier VALUES (S00001,Sinar Terang ,03120030020)

h. UPDATE, berfungsi untuk mengubah data pada tabel. Bila nama kelompok pada tabel kelompok dengan kode K0001 ingin diganti denganboneka maka perintah yang diberikan :
UPDATE kelompok SET nama_kelompok =boneka WHERE id_kelompok=K0001

i. DELETE, merupakan perintah untuk menghapus data pada tabel baik satu atau seluruhnya. Untuk menghapus data tertentu maka dapat dipergunakan WHERE sedangkan untuk menghapus seluruh isi tabel maka WHERE tidak dipergunakan lagi. Contoh menghapus seluruh isi tabel barang:

13

DELETE FROM barang;

Secara keseluruhan perintah SQL sangatlah beragam dan dapat dipergunakan sesuai dengan kebutuhan manipulasi data pada aplikasi database. Untuk setiap database server akan terdapat beberapa perintah SQL dengan sintaks tersendiri.

2.2.3

MySQL MySQL merupakan produk dari MySQL AB yang merupakan database

server yang cepat, multi-theraded, multi user dan robust. Software MySQL memiliki dual licensed dimana user dapat memilih untuk menggunakan MySQL sebagai open source berdasarkan persyaratan dari GNU(General Public Licence) atau membeli standar comercial licence dari MySQL. Beberapa karakteristik dari MySQL adalah sebagai berikut: a. Kode pemrograman 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.

2.2.4

Borland Delphi Merupakan perangkat pengembangan aplikasi yang sangat terkenal di

14

lingkungan windows. Dengan perangkat ini dapat dibuat berbagai aplikasi windows mulai seperti permainan, database, multimedia dan masih banyak lagi. Dengan Delphi dapat dibuat aplikasi yang rumit dengan tidak terlalu banyak menuliskan kode karena sifatnya yang visual. Delphi menggunakan objek pascal sebagai dasar bahasa pemerograman. Beberapa istilah yang umum dipergunakan dalam pemrograman Delphi adalah: Aplikasi atau program, adalah sederetan kode yang digunakan untuk mengatur komputer agar dapat berjalan sesuai dengan keinginan pembuat program. Aplikasi dibedakan menjadi aplikasi windows dan aplikasi konsol. Aplikasi windows adalah aplikasi yang berjalan pada windows sedangkan aplikasi yang tidak berjalan pada windows contohnya DOS. Form, merupakan tampilan berbentuk jendela pada windows dengan menggunakan form, pemakai dapat melakukan interaksi dengan komputer. Project, merupakan tempat peletakan dari Delphi dalam aplikasi. Sebuah proyek membawahi sejumlah form. Komponen, merupakan alat yang telah disediakan Delphi untuk

mempermudah pemrograman. Form juga merupakan salah satu komponen Delphi. Selain form, terdapat komponen lain seperti edit text, button, ttime, memo dan puluhan komponen lainnya. Komponen ada yang tampak dan ada yang tidak tampak dalam program. Komponen yang tampak disebut juga control. Windows API (Application programming Interface), Windows API adalah sebuah library yang sangat besar dan berisi ribuan fungsi. Sebagian besar fungsi-fungsi API dibuat dengan menggunakan bahasa C. VCL (Visual Component Library), VCL merupakan pembungkus dari fungsifungsi Windows API untuk mempermudah pemrograman. IDE (Integrated Development Environment), merupakan bagian dari Delphi yang memfasilitasi rancangan tampilan visual untuk pemakai dan menuliskan kode (lihat Gambar 2.12). Bagian-bagian dari IDE antara lain: Menu utama, speed bar, jendela Form, Object inspector, dan Componen Pallete

15

Gambar 2.12 IDE Delphi

Delphi menyediakan banyak komponen untuk melakukan akses pada database yang dikelompokkan berdasarkan mekanisme akses: Komponen BDE (Borland Delphi Engine), BDE mendukung API (Application Programming Interface) yang luas untuk berinteraksi dengan database. BDE merupakan solusi terbaik untuk bekerja dengan data pada tabel Paradox atau dBASE. Oleh Borland sendiri, pengembangan dari BDE sudah mulai digantikan oleh dbExpress. Komponen ADO (ActiveX Data Object), merupakan komponen yang menggunakan ADO untuk melakukan akses terhadap database melalui OLE DB. Komponen dbExpress, merupakan komponen yang menggunakan dbExpress untuk melakukan akses cepat ke informasi database. DbExpress juga mendukung pengembangan cross-platform karena juga tersedia di sistem operasi LINUX. Komponen InterBase, merupakan komponen yang melakukan akses pada Interbase secara langsung, tanpa melalui layer engine yang terpisah. Selain untuk melakukan akses terhadap data, terdapat juga komponen yang menjadi sarana penghubung antara user dan database (User Interface) yang

16

disebut sebagai Data Control. Data Control menyediakan set data-aware control yang berguna untuk menampilkan data dari user sekaligus untuk melakukan edit dan menyimpan data pada database. Secara umum, hal yang dapat dilakukan oleh data control adalah: Mengasosiasikan data contol dengan data set Melakukan edit dan update pada data Menampilkan atau menyembunyikan data Me-refresh data display Memungkinkan even untuk mouse, keyboard dan timer. Beberapa faktor yang diperlukan dalam menggunakan data control pada user interface adalah: Tipe dari data yang akan ditampilkan. Terdapat bermacam-macam jenis data yang yang dapat ditampilkan oleh data contol milik Delphi seperti text, grafik, elemen multimedia dan masih banyak lagi. Bagaimana informasi dapat disampaikan, yang ditampilkan dapat berupa satu data dari sebuah record saja atau beberapa data sekaligus dengan menggunakan grid. Kebutuhan navigasi pada data, bila pada user interface dibutuhkan navigasi data sekaligus perubahan pada data maka data control pada Delphi dapat mendukung hal tersebut. Beberapa komponen Data Control yang sering dipergunakan dalam pemrograman database pada Delphi adalah sebagai berikut: TDBNavigator, merupakan data-aware yang memiliki kemampuan untuk merubah pointer record untk maju atau mundur, melakukan edit, insert, delete dan refresh pada data. TDBText, merupakan data-aware yang dapat menampilkan isi field record yang aktif. TDB EditBox, merupakan data-aware yang dapat menampilkan isi field record yang aktif. TDBGrid, Data-aware yang berupa grid, yang memungkinkan untuk memperlihatkan dan melakukan edit data seperti pada spreadsheet. dalam bentuk tabular form

17

TDBimage, Data-aware dalam bentuk image yang berguna unutk menampilkan, melakukan edit, copy dan paste pada record yang sedang aktif.

TDBLookupCombo, merupakan Data-aware dalam bentuk list yang mengacu pada tabel saat run time.

2.2.5

ActiveX Data Object (ADO) ADO diawali dengan ide dimana sebuah Application Programming

Interface (API) dapat berinteraksi dengan berbagai sumber data. Dengan demikian developer dapat bebas menentukan tidak tergantung lagi pada satu jenis database dan dapat mengikuti perubahan kebutuhan dunia. Dua solusi awal yang cukup terkenal adalah Microsoft Open Database Conectivity (ODBC) dan Borland Integrated Database Programming (IDAPI) yang lebih dikenal sebagai Borland Database Engine (BDE). Microsoft selanjutnya mulai untuk menggantikan ODBC dengan OLEDB yang termasuk system-level-interface dan hanya diperuntukkan bagi system level programmer. System level programming sangat luas, rumit dan membutuhkan pengetahuan yang luas untuk melakukan pemrograman untuk produktivitas yang rendah. ADO merupakan layer di atas OLEDB dan merupakan application-level interface. ADO jauh lebih sederhana dari OLEDB dan didesain untuk application programmer. Baik ADO, OLEDB, dan ODBD tergabung bersama beberapa sarana akses data yang lain didalam Microsoft Data Access Component (MDAC). Arsitektur MDAC dapat dilihat pada Gambar 2.13. Pada komponen Delphi terdapat set komponen untuk melakukan akses ke database dengan menggunakan ADO yang disebut ADOExpress yang selanjutnya disebut sebagai dbGo. Akses kepada ADO dapat dilakukan secara langsung tanpa dbGo, tetapi hal ini melangkahi infrastruktur database dari Delphi sehingga tidak dapat menggunakan teknologi data-aware (contoh: Grids, dbNavigator, Graphical, ListBase dan Lookup) dan DataSnap (arsitektur database yang mengembangkan aplikasi client dan server pada lingkungan Three Tier) milik Delphi.

18

Gambar 2.13 Arsitektur MDAC

2.2.6

OpenGL OpenGL adalah software interface pada graphic hardware. OpenGL

merupakan standar grafik yang paling luas dipergunakan dalam pengembangan aplikasi grafik 2D dan 3D. Setelah diperkenalkan pada tahun 1992, OpenGL sangat luas dipergunakan dan mendukung Application Programming Interface (API) dari 2D dan 3D dan dapat dipergunakan pada berbagai platform (windows, machintos, UNIX) komputer di seluruh dunia. Keunggulan dari OpenGL dibanding software interface lain adalah pada: a. Portability, disebabkan oleh karena Open Standar yang dimiliki, sehingga perusahaan yang berminat untuk mendukung OpenGL harus membeli lisensi dari SGI dan dapat mengimplementasikan seluruh fitur dari OpenGL untuk platform tersebut. b. Hingga saat ini OpenGL telah dipergunakan diberbagai bidang dengan berbagai tujuan, mulai dari CAD Engineering and Architectural sampai pada pembutan teknologi grafik komputer pada film. OpenGL merupakan standar dari industri grafik kecuali untuk industri game dimana directX menjadi saingan. OpenGL bekerja secara prosedural dimana programmer harus dapat

19

mengambarkan langkah untuk memperoleh tampilan efek yang diinginkan. Langkah yang dipergunakan berhubungan dengan API dengan lebih dari 200 perintah dan fungsi untuk menggambarkan grafik primitif seperti titik, garis dan polygon pada dimensi tiga. OpenGL tidak melibatkan fungsi apapun yang berhubungan dengan window management, user interaction atau file I/O karena setiap platform seperti windows umumnya telah menyediakan fungsi tersendiri. Sebagai API, OpenGL terdiri dari tiga library yang terpisah, yaitu: GL, merupakan library yang dispesifikasikan oleh OpenGL berdasarkan Architecture Review Board. GLU, merupakan library utility dari OpenGL, library ini memiliki fungsi yang mempermudah penggambaran yang umum seperti menggambar sphere, disk, silinder. GLU ditulis dengan menggunakan perintah OpenGL dan akan ada dalam semua platform yang menggunakan spesifikasi OpenGL. GLUT, menyediakan cross platform API untuk melakukan operasi pada lingkungan yang menggunakan operasi window seperti display, redraw, dan event handling. Dengan menggunakan unit GL dan GLU pada Delphi dapat dilakukan pemrograman OpenGL. Beberapa perintah yang umum dipergunakan pada pemrograman OpenGL yaitu: Membuat warna background, perintah OpenGL ini memiliki tiga paramater heksa yang menunjukkan warna merah, hijau, biru dan nilai alpha. Nilai terendah adalah 0,0f yang menunjukkan warna hitam dan tertinggi adalah 1,0f yang menunjukkan warna putih. Berikut adalah contoh perintah untuk menghasilkan background berwarna hitam.
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);

Melakukan set terhadap depth buffer, depth buffer merupakan bagian penting dari OpenGL yang berfungsi untuk menjaga kedalaman objek dalam pada layar. Penggambaran umum depth buffer menyerupai layer pada layar.
glClearDepth(1.0f); //Setup Depth Buffer glEnable(GL_DEPTH_TEST);//Uji Kedalaman glDepthFunc(GL_LEQUAL);//Tipe Depth Test

Membersihkan layar dan depth buffer, perintah ini umumnya dipergunakan saat akan melakukan penggambaran ulang terhadap layar tampilan.

20

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

Melakukan set ulang posisi cursor, perintah ini berfungsi untuk meletakkan cursor kembali ke posisi awal dari sumbu x, y, dan z.
glLoadIdentity()

Melakukan perpindahan posisi dari matrix saat penggambaran, pada saat melakukan penggambaran, untuk melakukan perpindahan dari satu koordinat ke koordinat lain dalam penggambaran diperlukan operasi translasi matrix.
glTranslatef(105.0f,0.0f,0.0f);

Menggambar titik, sebagai bentuk dasar dari grafik penggambaran titik sangat sederhana. Dengan menggunakan tiga parameter yang meliputi kooodinat sumbu x, y, dan z. Bila ingin melakukan peletakan pada titik (0,1,0) maka dipakai perintah sebagai berikut:
glVertex3f( 0.0f, 1.0f, 0.0f);

Menggambar bidang, untuk menggambar bidang OpenGL telah memberikan kemudahan hanya dengan menentukan jenis dari bidang yang akan digambar yaitu triangle (segitiga), quads (segi empat) dan polygon (segi banyak). Setelah penentuan dilakukan maka ditentukan titik-titik yang kemudian membentuk bidang yang diinginkan.
glBegin(GL_TRIANGLES); // Gambar segitiga glVertex3f( 0.0f, 1.0f, 0.0f); // Atas glVertex3f(-1.0f,-1.0f, 0.0f); // Bawah Kiri glVertex3f( 1.0f,-1.0f, 0.0f); // Bawah Kanan glEnd(); // Akhir penggambaran segitiga glTranslatef(3.0f,0.0f,0.0f);//pindah kursor kiri glBegin(GL_QUADS); // Gambar Segiempat glVertex3f(-1.0f, 1.0f, 0.0f); // Atas Kiri glVertex3f( 1.0f, 1.0f, 0.0f); // Atas Kanan glVertex3f( 1.0f,-1.0f, 0.0f); // Bawah Kanan glVertex3f(-1.0f,-1.0f, 0.0f); // Bawah Kiri glEnd(); // Akhir Penggambaran Segiempat

21

Gambar 2.14 Hasil Penggambaran Bidang Segitiga dan Segiempat

Dari hasil menggambar bidang tersebut (lihat Gambar 2.14) dapat dibentuk bangunan tiga dimensi dengan menggambarkan beberapa bidang. Dengan berbekal pengetahuan menggambar bidang maka dapat dikembangkan hingga penggambaran tiga dimensi yang kompleks. Melakukan rotasi matrix, untuk melakukan rotasi pada objek dapat dilakukan dengan melakukan perkalian matrix, maka dilakukan perkalian dengan menggunakan perintah:
glRotatef(jumlah_Rotasi,0.0f, 1.0f, 0.0f);

Pada contoh perintah dia atas, jumlah_rotasi menunjukkan besar sudut berlawanan arah jarum jam, sementara tiga parameter selanjutnya

menunjukkan pada sumbu tempat perputaran. Meletakkan kamera, untuk melihat transformasi objek tiga dimensi dapat dilakukan selain dengan melakukan rotasi pada objek dapat juga dengan melakukan set pada sudut pandang penglihatan sebagaimana layaknya mata melihat, yaitu melalui posisi, target yang dilihat dan arah saat melihat. Perintah yang telah disediakan oleh library GLU ini melakukan pekalian secara otomatis dengan matrix yang ada untuk menghasilkan perubahan sudut pandang.
gluLookAt(locX, locY, locZ, dirX, dirY, dirZ, 0.0f, 1.0f, 0.0f)

Parameter locX, locY, locZ merupakan koordinat posisi tempat melihat objek, dirX, dirY dan dirZ adalah arah melihat sedangkan tiga parameter terakhir berfungsi untuk mengatur arah kemiringan penglihatan. Sebagai contoh, bila kita ingin melihat ke sebuah pot pada koordinat (2.0, 4.0,-3.0), dengan posisi dari kamera (4.0, 2.0, 1.0) dengan kemiringan vektor ( 2.0, 2.0, -1.0). Keadaan tersebut dapat dilihat pada

22

Gambar 2.15.

Gambar 2.15 Gambar Contoh Pengunaan Perintah Glulookat

2.2.7

Backtracking Backtracking merupakan bentuk algoritma yang banyak dan luas

dipergunakan dalam memecahkan permasalahan yang bersifat kombinasi. Cara kerja dari backtarcking adalah dengan melakukan simulasi atau mencoba satu demi satu kemungkinan untuk memperoleh hasil yang terbaik. Secara umum algoritma backtracking dapat dilihat pada Gambar 2.16. Backtracking memiliki keunggulan dalam kemampuannya untuk memperoleh hasil kombinasi yang terbaik karena mencoba semua kemungkinan dan mudah dalam melakukan pemrograman. Di sisi lain juga tidak efisien sebab proses pencarian yang lama karena pengujian dilakukan satu demi satu.

23

1. Inisialisasi prioritas pemanfaatan solusi 2. Sukses <- false 3. Ulangi sampai step 11 atau solusi habis 4. Ambil solusi berikut sesuai dengan prioritas 5. If solusi dapat dipakai 6. Then jalankan solusi tersebut 7. If solusi belum lengkap 8. 9. 10. Then Sukses<-coba(level(n+1)) If tidak sukses Then batalkan tindakan solusi tersebut

11. Return sukses Gambar 2.16 Algoritma Backtracking

BAB 3. METODE PENELITIAN


3.1 Metodologi Penelitian Penelitian ini dilaksanakan berdasarkan metodologi penelitian sebagai berikut: a. Studi Literatur Mempelajari berbagai teknologi yang akan dipergunakan dalam penelitian, seperti: database, algoritma genetika, dan penggunaan OpenGL dalam aplikasi. b. Pengumpulan data Cara pengumpulan data yang dilakukan sebagai berikut: Wawancara, dilakukan untuk mengumpulkan data mengenai kebutuhan dari perusahaan terhadap sistem, mempelajari sistem inventory yang dipergunakan perusahaan, memperoleh data jumlah dan jenis barang. Pengukuran lapangan, melakukan pengukuran langsung terhadap luas gudang, block tempat penyimpanan barang serta barang yang ukurannya tidak dicantumkan pada kemasan. Pengamatan, dilakukan dengan melihat kondisi gudang yang akan menggunakan sistem dan cara kerja yang berlangsung dalam gudang. c. Analisa kebutuhan Melakukan analisa terhadap hasil wawancara dan pengamatan. Menentukan teknologi yang akan dipergunakan. d. Desain perangkat lunak Pada tahap ini dilakukan desain terhadap sistem inventory yang akan diterapkan dalam perangkat lunak dengan menggunakan Data Flow Diagram dan Entity Relationship Diagram. Selain itu juga dibuat perencanaan dan desain terhadap cara optimasi, visualisasi dan interface dari perangkat lunak. e. Pembuatan perangkat lunak Pada pembuatan perangkat lunak, dilakukan pemrograman terhadap hasil perencanaan dan desain. Selain itu juga dilakukan dokumentasi selama tahap pembuatan. f. Pengujian perangkat lunak

24

25

Dalam proses pengujian, perangkat lunak dipastikan bebas error dan mulai diuji pada gudang tempat sistem akan diterapkan. Bila ternyata program masih belum sesuai dengan kebutuhan, maka akan dilakukan perbaikan pada desain sistem atau perubahan pada pemrograman dan pada akhirnya mengalami pengujian sekali lagi, hingga program dianggap layak untuk dipergunakan. g. Kesimpulan Dari hasil pengujian dilakukan pengambilan kesimpulan terhadap hasil pembuatan tugas akhir.

3.2 Analisis Sistem Lama Hal-hal yang perlu diperhatikan dalam sistem inventory perusahaan adalah sistem pemasukan, sistem pengeluaran, sistem pemeriksaan stok, pembuatan laporan, dan fisik gudang. Pemasukan barang Pemasukan barang pada perusahaan tersebut berasal dari pembelian dan perpindahan dari UD Aneka Mainan yang terletak jalan Dupak Megah Ruko Dupak Blok B/8 Surabaya. Proses pemasukan barang selalu disertai dengan surat jalan, baik dari supplier maupun dari UD Aneka Mainan sendiri. Retur penjualan ditangani oleh UD Aneka Mainan secara langsung, khususnya dalam pencatatan transaksi. Mengingat retur penjualan hampir tidak mungkin mencapai satuan besar (pack/dos). Penyebab lain adalah perjanjian barang yang telah dibeli tidak dapat dikembalikan. Pengeluaran barang Pengeluaran barang terjadi akibat pengiriman pesanan customer dan pengiriman permintaan dari UD Aneka Mainan. Pesan untuk mengeluarkan barang biasanya diberikan secara lisan kepada petugas gudang melalui telepon oleh bagian penjualan atau dengan menggunakan memo yang dibawa oleh pengantar dengan tanda tangan dan stempel dari bagian penjualan UD Aneka Mainan. Selain itu barang dikeluarkan untuk dikembalikan kepada supplier akibat salah pengiriman atau harga tidak sesuai dengan kesepakatan. Selain itu jika supplier mengirim barang melebihi yang dipesan, pihak UD Aneka Mainan berhak untuk menginstruksikan gudang untuk meretur barang. Retur

26

pembelian ditangani oleh UD aneka Mainan sendiri. Gudang hanya berperan untuk mencatat dan mengawasi pengeluaran barang. Semua pengeluaran barang akan disertai dengan surat jalan sebagai pengantar. Pemeriksaan stok Untuk mengawasi persediaan barang dalam gudang, maka sewaktu-waktu dilakukan pemeriksaan stok dengan melakukan stock opname. Pemeriksaan dilakukan secara periodik per bulan. Namun kadang dilakukan secara mendadak sesuai dengan keinginan pimpinan (manajer) perusahaan. Pemeriksaan stok tidak dilakukan secara keseluruhan, tetapi beberapa barang yang dianggap memiliki penjualan yang baik atau dilakukan secara acak. Pembuatan laporan Laporan dibuat dengan mengakumulasi perubahan jumlah barang, baik bertambah atau berkurang lalu dibuat perhitungan akumulasi untuk pembuatan laporan barang. Laporan dibuat dengan menggunakan pencatatan manual, yaitu: Laporan stok berupa: laporan stok menyeluruh, laporan barang yang harus dipesan, dan laporan barang rusak Kartu stok per barang/ mutasi barang Laporan barang yang harus dipesan Laporan perbandingan hasil pemeriksaan stok dengan jumlah stok tertulis Laporan kehilangan barang Fisik Gudang Gudang UD aneka Mainan berlokasi di daerah pergudangan Margomulyo Blok M No 21. Ukuran gudang adalah 14 meter X 38,25 meter. Barang secara umum terdiri dari tiga jenis, yaitu barang kemasan standar, barang satuan kecil, dan barang dengan kemasan tidak standar. Mayoritas barang kemasan tidak standar berada pada subblok barang rusak. Sementara untuk barang satuan kecil akan dikelompokkan sejumlah kemasan standar. Peletakan barang dalam gudang menggunakan sistem tumpuk, dimana barang yang sama akan diletakkan pada tempat (blok) yang sama. Bila blok tidak mencukupi, maka barang diletakkan pada tempat terpisah seminimum mungkin. Hal ini disebabkan oleh luasnya gudang. Peletakan

27

secara tumpuk dapat menyebabkan barang tertutup oleh barang lain yang dapat mempersulit pengambilan barang di gudang. Selain aturan penempatan secara berkelompok, barang dengan frekuensi keluar dan masuk yang tinggi diletakkan pada lokasi dekat pintu keluar gudang. Tujuannya agar mempermudah proses pengeluaran barang. Untuk itu ditetapkan prioritas terhadap lokasi dan barang dengan nilai 1 sampai 3. Nilai 1 menunjukkan prioritas terutama, dimana barang akan didahulukan pada setiap peletakan dan juga diusahakan untuk diletakkan pada lokasi dengan prioritas 1 (lebih dekat ke pintu gudang). Prioritas 2 untuk barang yang frekuensi keluar masuknya tidak terlalu tinggi dan tidak terlalu rendah. Terakhir adalah barang dengan prioritas 3, merupakan barang yang dianggap sulit dijual, dengan kata lain frekuensi keluar dan masuk yang paling rendah. Peletakan dengan prioritas subblok dan barang tidak mengikat, dimana saat subblok dengan nomor prioritas yang diinginkan tidak mencukupi maka barang dapat diletakkan pada subblok dengan prioritas yang lebih rendah. Untuk sistem pengeluaran barang dipergunakan metode FIFO (First In First Out) atau barang yang datang pertama akan dikeluarkan paling awal. Hal ini ditujukan untuk mencegah agar tidak terjadi perbedaan kualitas antara produk yang sama atau tampilan kemasan produk yang berbeda untuk barang yang sama. Bila terdapat tampilan kemasan berbeda dari waktu produksi yang berbeda, maka customer cenderung memesan yang terbaru. Penyebab lain adalah memperkecil resiko rusaknya kemasan barang, karena semakin lama berada dalam gudang, kemungkinan rusaknya kemasan semakin besar. Sebuah blok memiliki panjang yang beragam yang mengikuti tata letak dan denah gudang. Mengingat sulitnya untuk menentukan lokasi peletakan barang pada blok yang luas, maka blok selanjutnya dipecah menjadi beberapa subblok yang lebih kecil untuk mempermudah dalam proses pengaturan peletakan barang sekaligus untuk memperjelas penentuan lokasi peletakan dari gudang dan penomoran prioritasnya. Bentuk dari subblok tidak berupa sekat fisik yang memisahkan blok melainkan penanda jarak lengkap dengan label pada gudang. Subblok akan mempermudah penentuan lokasi

28

tempat barang akan diletakkan dan diambil. Setelah melakukan pengamatan lebih lanjut pada cara penyusunan dalam gudang, maka pengaturan peletakan dengan memperhitungkan maksimum tumpukan tidak dapat diterapkan pada kasus ini. Hal tersebut disebabkan oleh faktor sebagai berikut: a. Pengaturan peletakan dengan perhitungan maksimum tumpukan

memerlukan data koordinat dari barang yang diletakkan untuk melakukan perhitungan pengaturan peletakan. Hal ini berarti diperlukan penyimpanan yang besar untuk koordinat barang dalam gudang untuk setiap satu kemasan dari barang. b. Barang yang terletak pada blok tidak mungkin terus diawasi satu demi satu posisi peletakannya. Penyimpanan barang di UD Aneka Mainan bersifat tumpuk, dapat menyebabkan pencatatan dengan cara menyusun barang pada blok akan semakin memperumit proses sistem inventory. Terlebih lagi beberapa barang hanya berada dalam waktu singkat dalam gudang, mengakibatkan proses pengawasan akan menjadi lebih sulit. Kondisi penyusunan gudang pada perusahaan dapat dilihat pada Gambar 3.1.

Gambar 3.1 Kondisi Penyusunan Barang dalam Gudang

3.2.2

Analisis Permasalahan Beberapa permasalahan yang sering muncul pada sistem manual UD

Aneka Mainan adalah:

29

Jumlah dan jenis barang yang semakin banyak menyebabkan sulitnya pencatatan transaksi secara manual dan pemborosan waktu dalam kegiatan administrasi pergudangan seperti dalam pembuatan laporan.

Ukuran gudang terbatas sementara jumlah dan jenis barang semakin bertambah memerlukan penghematan ruang dalam peletakan barang. Perubahan lokasi barang dalam gudang tanpa dokumentasi membuat pencarian sulit untuk pengeluaran barang bahkan dapat dinyatakan hilang atau habis meskipun barang sebenarnya tersembunyi diantara barang lain.

Pekerja dalam gudang dapat melakukan kecurangan dengan mengambil barang tanpa sepengetahuan pemilik memerlukan pengawasan yang baik.

3.2.3

Analisis Kebutuhan Dari permasalahan yang muncul, maka perusahaan membutuhkan sistem

inventory baru yang: terkomputerisasi untuk proses pemasukan dan pengeluaran barang, dimana sistem tersebut dapat mencatat semua kegiatan pengeluaran dan pemasukan barang dalam gudang. Serta dapat menghasilkan laporan yang dibutuhkan secara cepat dan akurat. dapat mempermudah dan dapat memberi solusi pengaturan peletakan barang dalam gudang. dapat mempermudah pengenalan fisik gudang, termasuk analisis penggunaan lokasi dengan visualisasi gudang dan persentase penggunaan ruang.

3.3 Desain Sistem Desain sistem dimulai dengan penggambaran Data Flow Diagram dan Entity Relationship Diagram kemudian dilanjutkan dengan pembuatan program aplikasi.

3.3.1

Desain Data Flow Diagram (DFD) Penggambaran sistem kerja diawali dengan Context diagram sistem

pemasukan barang dan pengeluaran barang yang akan dilanjutkan dengan diagram

30

level 0 dan level 1 untuk masing-masing sistem. Context Diagram Sistem Inventory dapat dilihat pada Gambar 3.2. Terdapat lima external entity yang terlibat, yaitu: UD Aneka Mainan, Manajer, Customer, dan Supplier. DFD Sistem Inventory level 0 dapat dilihat pada Gambar 3.3. Terdapat empat proses utama dalam sistem inventory, yaitu pemasukan barang, pengeluaran barang, pembuatan laporan dan informasi, serta pemeriksaan (opname) stok barang fisik. Proses pemasukkan barang (lihat Gambar 3.4) merupakan proses yang menyebabkan bertambahnya barang di gudang. Melibatkan UD Aneka Mainan selaku bagian pembelian dan penjualan. Informasi tentang pembelian barang secara lisan atau tulisan (memo) diberikan kepada gudang untuk persiapan penerimaan barang. Selain itu dapat pula terjadi pemindahan barang dari UD Aneka Mainan ke Gudang. Dari ekspedisi selaku pihak yang mengantarkan barang akan disertakan surat jalan supplier yang berisi informasi jumlah barang yang dikirimkan. Pengeluaran barang, (lihat Gambar 3.5) merupakan peroses yang menyebabkan berkurangnya barang dari dalam gudang. Melibatkan customer selaku penerima barang yang dikeluarkan. Dalam kasus khusus dapat terjadi retur, yang disebabkan oleh ketidaksesuaian barang yang dikirimkan oleh supplier dengan kesepakatan transaksi namun hal ini merupakan hal yang jarang terjadi. Selain itu juga dapat terjadi pengeluaran barang untuk persediaan bagian penjualan UD Aneka Mainan. Pemeriksaan barang fisik (lihat Gambar 3.6) merupakan proses yang menjadi bentuk control dari UD Aneka Mainan terhadap inventory. Pemeriksaan barang fisik sering disebut dengan stock opname pada perusahaan ini dan dilakukan secara periodik untuk barang yang dianggap memiliki frekuensi jual yang tinggi sedangkan untuk barang lainnya dapat dilakukan pemeriksaan secara acak pada waktu tertentu sesuai dengan keputusan dari manajer.

31

KARTU STOK PERBARANG PERMINTAAN LAPORAN MANAJER

DATA PEMESANAN BARANG INFORMASI PENGELUARAN BARANG UD Aneka UD Aneka Mainan Mainan PERMINTAAN RETUR BELI INFORMASI PENGIRIMAN DATA STOK

SURAT JALAN PEMASUKAN BARANG PERMINTAAN BARANG PERMINTAAN DATA STOK SURAT JALAN PEMINDAHAN BARANG MEMO PENGELUARAN BARANG 0 SISTEM INVENTORY LAPORAN STOK LAPORAN PENGELUARAN BARANG LAPORAN PERBANDINGAN OPNAME PERMINTAAN OPNAME LAPORAN PENERIMAAN BARANG

SURAT JALAN KELUAR RETUR SURAT JALAN KELUAR CUSTOMER

SUPPLIER EKSPEDISI

CUSTOMER

Gambar 3.2 Context Diagram Sistem Inventory

32

Proses terakhir adalah membuat laporan dan informasi (lihat Gambar 3.7). Laporan berisi akumulasi dari transaksi yang umumnya diberikan secara periodik (mingguan). Namun ada juga yang dapat sewaktu-waktu perlu dihasilkan seperti laporan stok menyeluruh. Informasi sendiri dalam hal ini berupa informasi yang tidak periodik yang diperlukan oleh UD Aneka Mainan (pembelian dan penjualan) atau manajer dan sifatnya lisan dan umumnya dalam jumlah kecil, Contoh: jumlah stok untuk barang tertentu, Jadwal permintaan pesanan apakah telah dipenuhi dan masih banyak lagi informasi singkat lainnya yang sering dibutuhkan sewaktu-waktu.

3.3.2

Desain Entity relationship Diagram Desain ERD untuk UD Aneka Mainan secara konseptual dapat dilihat

pada Gambar 3.8. Sedangkan ERD secara fisik dapat dilihat pada Gambar 3.9. Proses desain dengan mempertimbangkan berbagai segi dan aspek untuk memudahkan pemakai.

3.3.3

Desain Pengaturan Peletakan Desain pengaturan peletakan dibuat dengan mempertimbangkan aturan

pemasukan barang dalam perusahaan. Pada proses pengaturan peletakan barang yang masuk terjadi beberapa tahap yaitu sebagai berikut: Pencarian lokasi barang sejenis, pada tahap ini, barang masuk akan diperiksa apakah gudang masih memiliki barang dengan identitas (Id_barang) yang sama. Bila ada, dilakukan pengisian pada subblok tempat lokasi barang sejenis berada terlebih dahulu. Bila ternyata subblok tidak mencukupi atau gudang tidak mempunyai barang yang sejenis, maka dilakukan pengujian terhadap subblok dengan

backtracking. Selama backtracking berlangsung, dilakukan pengujian terhadap lokasi barang yang ditempati dengan membandingkan jumlah subblok yang terpakai secara keseluruhan hasil backtracking dan berapa sisa space yang tidak dapat dipergunakan bila barang yang sama memenuhi subblok tersebut.

33

SURAT JALAN PEMASUKAN BARANG EKSPEDIS I INPUTAN BARANG MASUK MASUK BARANG

PERMINTAAN LAPORAN LAPORAN PERBANDINGAN OPNAME LAPORAN PENGELUARAN BARANG MANAJER MANAJER MANAJER

PERMINTAAN OPNAME

1 DATA PEMESANAN BARANG SURAT JALAN PEMINDAHAN BARANG PERMINTAAN DATA STOK INFORMASI PENGELUARAN BARANG DATA STOK MEMASUKKA DATA UPDATE TAMBAH MUTASI BARANG N BARANG

+
QUERY MASUK BARANG

3 MEMBUAT LAPORAN DAN INFORMASI

LAPORAN STOK LAPORAN PENERIMAAN BARANG KARTU STOK PERBARANG QUERY DATA OPNAME

MUTASI BARANG PERMINTAAN BARANG MEMO PENGELUARAN BARANG UD Aneka UD Aneka UD Aneka UD Aneka UD Aneka UD Aneka UD Aneka Mainan Mainan Mainan Mainan Mainan Mainan SURAT JALAN KELUAR ANTAR LOKASI KELUAR BARANG

DATA OPNAME BARANG QUERY MUTASI BARANG HASIL OPNAME STOK UPDATE DATA STOK QUERY KELUAR BARANG 4 PERIKSA STOK FISIK BARANG

+
2 PERMINTAAN RETUR BELI MENGELUAR KAN BARANG DATA UPDATE KURANG MUTASI BARANG INPUTAN BARANG KELUAR QUERY STOK BARANG

SURAT JALAN KELUAR CUSTOMER

+ UPDATE STOK MASUK BARANG


DATA PENGURANGAN STOK UPDATE STOK BARANG HILANG

STOK BARANG

STOK BARANG AKTUAL

CUSTOMER

SUPPLIER

SURAT JALAN KELUAR RETUR

Gambar 3.3 Data Flow Diagram Sistem Inventory Level 0

34

UD Aneka UD Aneka Mainan Mainan

[SURAT JALAN PEMASUKAN BARANG]

EKSPEDISI

[SURAT JALAN PEMINDAHAN BARANG]

1.1 TERIMA BARANG MASUK

DATA PENERIMAAN BARANG STOK BARANG : 2 1.2 CEK PENERIMAAN

1.3 SIMPAN BARANG MASUK

DATA BARANG YANG DITERIMA

[DATA UPDATE TAMBAH MUTASI BARANG] DATA BARANG HILANG

1.4 [INPUTAN BARANG MASUK] MASUK BARANG MUTASI BARANG SIMPAN DATA BARANG HILANG [UPDATE STOK BARANG HILANG]

[UPDATE STOK MASUK BARANG]

STOK BARANG : 1

UPDATE PERUBAHAN JUMLAH STOK SUBBLOK 1.5 PEMINDAHAN KE SUBBLOK BARANG RUSAK

DATA BARANG RUSAK

Gambar 3.4 Data Flow Diagram level 1 Proses Pemasukan Barang

35

SURAT JALAN KELUAR ANTAR LOKASI 1 UD UD Aneka Mainan PERMINTAAN RETUR BELI MEMO PENGELUARAN BARANG PERMINTAAN BARANG PENGELUARAN YANG DAPAT DIPENUHI 3 BUAT SURAT JALAN DATA PENGELUARAN YANG TELAH DICATAT 2 CATAT PENGELUARAN DATA UPDATE KURANG MUTASI BARANG CEK PERSEDIAAN BARANG

SURAT JALAN KELUAR CUSTOMER

KELUAR BARANG CUSTOMER SURAT JALAN KELUAR RETUR

INPUTAN BARANG KELUAR DATA PENGURANGAN STOK

MUTASI BARANG STOK BARANG SUPPLIER

Gambar 3.5 Data Flow Diagram Level 1 Proses Pengeluaran Barang

STOK BARANG : 2 3 STOK BARANG AKTUAL MEMBANDINGKAN HASIL PEMERIKSAAN DAN STOK AKTUAL DATA STOK OPNAME 1 PERIKSA STOK FISIK DATA HASIL PERBANDINGAN HASIL OPNAME STOK DATA OPNAME BARANG

2 CATAT HASIL STOK FISIK PERMINTAAN OPNAME DATA JUMLAH YANG BERBEDA DENGAN STOK AKTUAL STOK BARANG : 1 4 MANAJER PENYESUAIAN (ADJUSTMENT) SELISIH PERBANDINGAN UPDATE DATA STOK

DATA BARANG KURANG BARANG HILANG

DATA BARANG LEBIH

DATA BARANG MASUK

Gambar 3.6 Data Flow Diagram level 1 Proses Periksa Stok Fisik Barang

36

2 PERMINTAAN DATA STOK INFORMASI PENGELUARAN BARANG UD Aneka Mainan PENERIMAAN PERMINTAAN INFORMASI SEDERHANA

PERMINTAAN INFORMASI SEDERHANA JENIS KEBUTUHAN INFORMASI

1 PENERIMAAN PERMINTAAN LAPORAN

LAPORAN STOK LAPORAN PERBANDINGAN OPNAME LAPORAN BARANG YANG HARUS DIPESAN MANAJER MANAJER

PERMINTAAN LAPORAN

JENIS KEBUTUHAN LAPORAN 3 QUERY DATA YANG PEMBENTUK INFORMASI DAN LAPORAN QUERY DATA OPNAME QUERY MASUK BARANG QUERY MUTASI BARANG QUERY STOK BARANG QUERY KELUAR BARANG MASUK BARANG STOK BARANG KELUAR BARANG LAPORAN PENERIMAAN BARANG KARTU STOK PERBARANG LAPORAN PENGELUARAN BARANG

DATA STOK INFORMASI PENGIRIMAN

DATA OPNAME BARANG

MUTASI BARANG

Gambar 3.7 Data Flow Diagram level 1 Membuat Laporan dan Informasi

Bila backtracking selesai maka akan dihasilkan solusi untuk dipilih oleh user untuk peletakan barang. Mengingat proses backtracking yang akan menghasilkan kemungkinan

cukup besar dengan kebutuhan penggunaan memory yang besar, maka akan dipergunakan struktur data linked list. Linked list merupakan suatu bentuk struktur data yang bersifat dinamis, terutama dalam efisiensi penggunaan memory. Selain itu jumlah kemungkinan yang besar dari backtracking juga akan dibatasi untuk menjaga kecepatan penggunaan sistem. Untuk lebih memperjelas tahapan dari proses pengaturan peletakan, maka tahapan desain akan digambarkan dalam bentuk flowchart pada Gambar 3.10.

37

PERPINDAHAN_INTERNAL ID_PINDAH TANGGAL_PINDAH KETERANGAN_PINDAH STOK_AKHIR_PERIODE ID_STOK_AKHIR TGL_PROSES_AKHIR_PERIODE JUMLAH_AKHIR_PERIODE KELOMPOK ID_KELOMPOK NAMA_KELOMPOK KELUAR_BARANG ID_KELUAR TANGGAL_KELUAR KETERANGAN_KELUAR
BARANG HILANG

INPUT_BARANG_HILANG

BARANG_HILANG ID_HILANG Diantar Oleh Pengantar TANGGAL_HILANG KETERANGAN_HILANG


BARANG HILANG

DIKIRIM

DIKELUARKAN DARI GUDANG DIKELUARKAN DARI GUDANG

Dibawa pada customer

PENGANTAR ID_PENGANTAR NAMA_PENGANTAR CUSTOMER ID_CUSTOMER NAMA_CUSTOMER ALAMAT_CUSTOMER TELEPON_CUST

KELOMPOK DARI BARANG

DETAIL_KONVERSI ID_KEMASAN_AWAL ID_KEMASAN_AKHIR JUMLAH_BARANG_AWAL JUMLAH_BARANG_AKHIR

Input data keluar MENGALAMI PERPINDAHAN REF_2907 BARANG HILANG2 DIKELUARKAN DARI GUDANG2 Input perpindahan Ref_3305

USER USER_ID PASSWORD HAK_AKSES

MENGALAMI PERPINDAHAN2

BARANG BARANG YANG DIOPNAME2 YANG DIOPNAME

BARANG
Ref_2919 Ref_2911

PROSS AKHIR

KONVERSI_BARANG ID_KONVERSI TANGGAL_KONVERSI KETERANGAN_KONVERSI

Ref_3296

ID_BARANG Ref_2915 KODE_UMUM NAMA_BARANG SATUAN ISI_BARANG PANJANG LEBAR TINGGI MAKSIMUM_TUMPUKAN ROQ HARGA_MODAL PRIORITAS

OPNAME_BARANG ID_OPNAME TANGGAL_OPNAME PENYESUAIAN

INPUT OPNAME BARANG

INPUT MASUK BARANG BARANG YANG MASUK2

WILAYAH ID_WILAYAH NAMA_WILAYAH EKSPEDISI ID_EKSPEDISI NAMA_EKSPEDISI TELEPON_EKS ALAMAT_EKSPEDISI Dibawa oleh ekspedisi AREA_PENGANTARAN

SUPPLIER ID_SUPPLIER BARANG YANG MASUK NAMA_SUPPLIER ALAMAT_SUPPLIER TELEPON_SUPPLIER1 TELEPON_SUPPLIER2 SUB_BLOK
BARANG YANG MASUK Ref_1349 Ref_1741

Ref_3309

DETAIL INFORMASI KEDATANGAN STOK

BARANG KEMASAN DARI STOK BERSANGKUTAN

BARANG KEMASAN DARI STOK BERSANGKUTAN

ID_SUB_BLOK ID_GUDANG ID_BLOK X1_SUBBLOK Y1_SUBBLOK X2_SUBBLOK Y2_SUBBLOK PANJANG_SUBBLOK LEBAR_SUBBLOK BARANG KEMASAN DARI MUTASI TINGGI_SUBBLOK SISA_SPACE_SUBBLOK PRIORITAS LOKASI

MASUK_BARANG ID_MASUK TANGGAL_PENGIRIMAN TANGGAL_MASUK KETERANGAN_MASUK ID_SURAT_JALAN

Ref_3288

MUTASI MASUK TERJADI PADA SUBBLOK ID_SUB_BLOK_ASAL

MENYIMPAN BARANG BARANG KEMASAN DARI STOK BERSANGKUTAN2 DETAIL MUTASI KELUAR PADA SUBBLOK BARANG YANG BERPINDAH SUBBLOK MUTASI KEMASAN

DETAIL_MUTASI_KELUAR_INTERNAL JUMLAH_BARANG MUTASI_BARANG ID_MUTASI STATUS JUMLAH_MUTASI TANGGAL_MUTASI ID_TRANSAKSI

STOK_BARANG ID_STOK JUMLAH_BARANG_SUBBLOK


Ref_1725

MUTASI KELUAR DAN INTERNAL

DETAIL_STOK JUMLAH_BARANG

DETAIL_MUTASI_KEMASAN JUMLAH_BARANG

MUTASI MASUK TERJADI PADA SUBBLOK2 MUTASI MASUK TERJADI PADA SUBBLOK MEMILIKI KEMASAN Ref_1745

Gambar 3.8 Conceptual Entity relationship Diagram Sistem Inventory

38

DETAIL_HILANG
ID_BARANG = ID_BARANG

DETAIL_KELUAR ID_BARANG char(10) ID_KELUAR char(9) JUMLAH_KELUAR integer

KELUAR_BARANG ID_KELUAR char(9) ID_PENGANTAR char(5) USER_ID varchar(20) ID_EKSPEDISI char(5) ID_KELUAR = ID_KELUAR ID_CUSTOMER char(5) TANGGAL_KELUAR date KETERANGAN_KELUAR varchar(30) DETAIL_PINDAH ID_BARANG ID_PINDAH ID_SUB_BLOK_ASAL ID_SUB_BLOK_TUJUAN JUMLAH_PINDAH char(10) char(9) char(4) char(4) smallint

ID_BARANG ID_HILANG JUMLAH_HILANG

char(10) char(9) integer


ID_PENGANTAR = ID_PENGANTAR ID_EKSPEDISI = ID_EKSPEDISI ID_HILANG = ID_HILANG

USER_ID = USER_ID

STOK_AKHIR_PERIODE ID_STOK_AKHIR ID_BARANG TGL_PROSES_AKHIR_PERIODE JUMLAH_AKHIR_PERIODE

char(10) char(10) date integer ID_BARANG = ID_BARANG

KELOMPOK ID_KELOMPOK char(5) NAMA_KELOMPOK varchar(35)

ID_PINDAH = ID_PINDAH

PERPINDAHAN_INTERNAL ID_PINDAH char(9) USER_ID varchar(20) TANGGAL_PINDAH date KETERANGAN_PINDAH varchar(30)


ID_CUSTOMER = ID_CUSTOMER

BARANG_HILANG ID_HILANG char(9) USER_ID varchar(20) TANGGAL_HILANG date KETERANGAN_HILANG varchar(30)

PENGANTAR ID_PENGANTAR char(5) NAMA_PENGANTAR varchar(35)

DETAIL_KONVERSI ID_BARANG_AWAL ID_BARANG_AKHIR ID_KONVERSI ID_KEMASAN_AWAL ID_KEMASAN_AKHIR JUMLAH_BARANG_AWAL JUMLAH_BARANG_AKHIR

ID_BARANG = ID_BARANG

char(10) char(10) char(9) char(10) char(10) smallint smallint

ID_KELOMPOK = ID_KELOMPOK USER_ID = USER_ID ID_BARANG = ID_BARANG_AWAL ID_BARANG = ID_BARANG

DETAIL_OPNAME ID_OPNAME char(9) ID_BARANG char(10) ID_SUB_BLOK char(4) JUMLAH_AKTUAL smallint JUMLAH_OPNAME smallint

ID_WILAYAHUSER_ID PASSWORD USER_ID = = ID_WILAYAH

USER varchar(20) varchar(10) HAK_AKSES integer USER_ID

ID_OPNAME = ID_OPNAME

CUSTOMER ID_CUSTOMER ID_WILAYAH NAMA_CUSTOMER ALAMAT_CUSTOMER TELEPON_CUST

char(5) char(5) char(35) char(35) char(20)

BARANG
ID_KONVERSI = ID_KONVERSI = ID_BARANG_AKHIR ID_BARANG USER_ID = USER_ID ID_BARANG char(10) ID_SUB_BLOK = ID_SUB_BLOK_ASAL ID_KELOMPOK char(5) KODE_UMUM varchar(20) NAMA_BARANG varchar(35) SATUAN varchar(5) ISI_BARANG smallint PANJANG float LEBAR float TINGGI float MAKSIMUM_TUMPUKAN smallint ROQ smallint HARGA_MODAL float PRIORITAS smallint

OPNAME_BARANG ID_OPNAME char(9) USER_ID varchar(20) TANGGAL_OPNAME_ date PENYESUAIAN_OPNAME smallint

USER_ID = USER_ID

ID_BARANG = ID_BARANG

ID_BARANG = ID_BARANG

DETAIL_MASUK ID_BARANG char(10) ID_MASUK char(9) JUMLAH_MASUK smallint


USER_ID = USER_ID

KONVERSI_BARANG ID_KONVERSI char(9) USER_ID varchar(20) TANGGAL_KONVERSI date KETERANGAN_KONVERSI varchar(20)


ID_BARANG = ID_BARANG

SUPPLIER ID_SUPPLIER ID_WILAYAH NAMA_SUPPLIER ALAMAT_SUPPLIER TELEPON_SUPPLIER1 TELEPON_SUPPLIER2 char(5) char(5) varchar(35) varchar(35) varchar(20) varchar(20)

WILAYAH ID_WILAYAH char(5) NAMA_WILAYAH varchar(25)

ID_MASUK = ID_MASUK ID_WILAYAH = ID_WILAYAH

EKSPEDISI ID_EKSPEDISI NAMA_EKSPEDISI TELEPON_EKS ID_EKSPEDISI = ID_EKSPEDISI ALAMAT_EKSPEDISI_ AREA_PENGANTARAN

char(5) varchar(35) varchar(20) varchar(35) varchar(35)

SUB_STOK ID_STOK ID_BARANG_PARENT JUMLAH_ISI

char(4) char(10) integer

ID_BARANG = ID_BARANG_PARENT

ID_SUB_BLOK = ID_EKSPEDISI

ID_SUB_BLOK = ID_STOK

STOK_BARANG ID_SUB_BLOK ID_STOK ID_BARANG JUMLAH_BARANG_SUBBLOK

SUB_BLOK ID_SUB_BLOK ID_GUDANG ID_BLOK X1_SUBBLOK Y1_SUBBLOK X2_SUBBLOK ID_BARANG = ID_BARANG_KEMASAN Y2_SUBBLOK PANJANG_SUBBLOK LEBAR_SUBBLOK TINGGI_SUBBLOK SISA_SPACE_SUBBLOK PRIORITAS_LOKASI
ID_SUB_BLOK = ID_SUB_BLOK

MASUK_BARANG char(4) char(2) char(2) ID_SUB_BLOK = ID_SUB_BLOK float float float float ID_SUB_BLOK = ID_SUB_BLOK_TUJUAN ID_SUPPLIER = ID_SUPPLIER float float float float smallint ID_SUB_BLOK = ID_SUB_BLOK ID_MASUK ID_EKSPEDISI USER_ID TANGGAL_PENGIRIMAN TANGGAL_MASUK KETERANGAN_MASUK ID_SUPPLIER ID_SURAT_JALAN_MSK char(9) char(4) varchar(20) date date varchar(20) char(5) varchar(10)

ID_MASUK = ID_MASUK

MUTASI_BARANG ID_MUTASI ID_BARANG STATUS JUMLAH_MUTASI TANGGAL_MUTASI ID_TRANSAKSI char(9) char(10) smallint smallint ID_SUB_BLOK = ID_SUB_BLOK date varchar(9)

char(4) char(8) char(10) smallint

ID_BARANG = ID_BARANG

ID_SUB_BLOK = ID_SUB_BLOK

DETAIL_STOK ID_SUB_BLOK char(4) ID_MASUK char(9) JUMLAH_BARANG integer

DETAIL_MUTASI_KEMASAN ID_MUTASI char(9) ID_BARANG_KEMASAN char(10) ID_SUB_BLOK char(4) JUMLAH_BARANG smallint

ID_MUTASI = ID_MUTASI

ID_SUB_BLOK = ID_SUB_BLOK ID_MUTASI = ID_MUTASI

ID_MASUK = ID_MASUK

DETAIL_MUTASI_KELUAR_INTERNAL ID_MUTASI ID_SUB_BLOK ID_MASUK JUMLAH_BARANG char(9) char(4) char(9) smallint

DETAIL_MUTASI_MASUK ID_MUTASI char(9) ID_SUB_BLOK char(4) JUMLAH_BARANG smallint

ID_MUTASI = ID_MUTASI

Gambar 3.9 Physical Entity relationship Diagram Sistem Inventory

39

Function Pengaturan peletakan barang()

Ambil daftar sub_blok yang memungkinka n untuk dipakai, taruh dalam tabel intf_subblok untuk simulasi

Salin data barang yang memiliki ukuran (barang bukan dalam satuan kecil) yang akan dioptimasi ke intf_barang_o ptimasi

Ambil daftar barang yang akan dioptimasi dari intf_barang_o ptimasi pindahkan ke dalam linked list untuk mempercepat proses

Optimasi dipakai ? ENDWHILE While not intf_optimasi_barang.eof Lanjutkan ke data barang selanjutya

Call Cari lokasi barang sejenis()

Adakah barang yang belum menemukan lokasi peletakan untuk jenis yang sama ?

Y Isi daftar subblok ke dalam array daftar subblok untuk mempercepat proses

Salin hasil ke dalam linked list

Query data subblok yang mungkin untuk setiap barang

Call Cari lokasi barang keseluruhan()

Simpan beberapa solusi yang dihasilkan pada intf_solusi_prototype

Return Simpan data pada intf_solusi_protoype

Gambar 3.10 Flowchart Prosedur Pengaturan Peletakan

BAB 4. HASIL PENELITIAN DAN PEMBAHASAN


4.1 Implementasi Aplikasi Aplikasi ini dikembangkan dengan Borland Delphi 6 sebagai bahasa pemrograman dan MySQL sebagai basis data, serta OpenGL untuk visualisasi.

4.2 Pengujian Aplikasi Pengujian aplikasi dilakukan terhadap 9 subblok dengan volume yang berbeda dan nomor prioritas yang beragam dapat dilihat pada Tabel 4.1. Subblok yang tidak disertakan dalam pengaturan peletakan, prioritasnya diberi nilai 2.

Tabel 4.1. Daftar Subblok Pengujian I Subblok MB01 MC01 MD01 MB03 MC03 MD03 MB05 MC05 MD05 4.2.1 Volume kosong (Cm 3) Prioritas 39.660.000 1 59.490.000 1 51.558.000 1 39.660.000 2 59.490.000 2 51.558.000 2 39.660.000 3 59.490.000 3 51.558.000 3

Pemasukan Barang Pada Subblok Kosong Pengujian pertama diawali dengan memasukkan 3 barang dengan jumlah,

volume dan prioritas yang berbeda ke dalam subblok. Tujuan dari pengujian ini adalah untuk memperlihatkan bagaimana proses pengaturan peletakan yang berlangsung dengan mempergunakan jumlah subblok, sisa space tak terpakai dan prioritas lokasi pada pemasukan barang. Daftar barang yang dimasukkan akan diperlihatkan pada Tabel 4.2. Data barang yang diberikan tersebut akan menjalani proses pemasukan data sebagai pada transaksi masuk dengan jenis transaksi antar lokasi (pindahan dari UD Aneka Mainan). Pada tahap awal dilakukan pemasukan data pada form transaksi masuk. Untuk melibatkan barang dalam proses pengaturan peletakan

40

41

yang ingin diperlihatkan, maka pada field subblok dari form akan dikosongkan (lihat Gambar 4.1). Sementara untuk field barang kemasan dikosongkan karena barang yang dimasukkan adalah barang standar. Bila user mencoba mengisi field barang kemasan maka akan muncul pesan error.

Tabel 4.2. Daftar Barang Masukan Pengujian I Volume Volume Prioritas Jumlah Satuan (Cm3) total(Cm3) 001B00001 Basketball Playset 145.656 1 300 43.696.800 002G00001 Gasing z-7 175.122 2 100 17.512.200 004H00001 Handphone kitty 66.248 3 30 1.987.440 Id Barang Nama Barang

Gambar 4.1 Pemasukan Data Pengujian I

Setelah pengisian dilakukan, maka user akan diberikan konfirmasi untuk melibatkan seluruh barang ke dalam proses pengaturan peletakan (lihat Gambar 4.2). Untuk melanjutkan maka user dapat menekan tombol lanjutkan. Setelah tombol lanjutkan ditekan, maka proses akan dilanjutkan dengan proses pengaturan peletakan. Hasil proses akan ditampikan pada form visualisasi hasil bersama dengan solusi yang diberikan (lihat Gambar 4.3). Solusi yang dihasilkan diambil sebanyak 5 terbaik untuk dipilih oleh user. Berdasarkan hasil pengaturan peletakan, solusi yang dihasilkan menurut urutannya dapat dilihat pada Tabel 4.3.

42

Gambar 4.2 Form Konfirmasi untuk Pengaturan Peletakan

Gambar 4.3 Form Visualisasi Hasil Pengaturan Peletakan

Dari solusi yang diberikan, dapat dilihat bahwa aplikasi akan menempatkan barang sesuai dengan prioritas lokasinya. Sementara untuk jumlah subblok dan rata-rata sisa space tidak bisa dipakai juga dilibatkan sebagai pertimbangan dalam perhitungan hasil pengaturan peletakan. Nilai dari jumlah subblok dan rata-rata sisa space tidak bisa dipakai dapat dilihat pada memo yang terletak di sebelah kanan bawah dari form. Catatan yang pada memo dari hasil pengujian ini dapat dilihat pada Gambar 4.4.

43

Tabel 4.3. Solusi Hasil Pengujian I Subblok Solusi I MD03 MC01 MD05 Solusi II MD03 MC01 MB05 Solusi III MD03 MD01 MD05 Solusi IV MB03 MC01 MD05 Solusi V MD03 MD01 MB05 002G00001 001B00001 004H00001 Gasing z-7 Basketball Playset Handphone kitty 100 300 30 002G00001 001B00001 004H00001 Gasing z-7 Basketball Playset Handphone kitty 100 300 30 002G00001 001B00001 004H00001 Gasing z-7 Basketball Playset Handphone kitty 100 300 30 002G00001 001B00001 004H00001 Gasing z-7 Basketball Playset Handphone kitty 100 300 30 002G00001 001B00001 004H00001 Gasing z-7 Basketball Playset Handphone kitty 100 300 30 Id Barang Nama Barang Jumlah

Solusi 1: Jumlah subblok hasil pengaturan:3 Rata-rata sisa space tak terpakai :42168,9999999995 Solusi 2: Jumlah subblok hasil pengaturan:3 Rata-rata sisa space tak terpakai :49741,0000000005 Solusi 3: Jumlah subblok hasil pengaturan:3 Rata-rata sisa space tak terpakai :61938,9999999999 Solusi 4: Jumlah subblok hasil pengaturan:3 Rata-rata sisa space tak terpakai :62426,4999999989 Solusi 5: Jumlah subblok hasil pengaturan:3 Rata-rata sisa space tak terpakai :69511,0000000009

Gambar 4.4 Hasil Perbandingan dalam Pengujian I Pengaturan Peletakan

44

Dari Gambar 4.4. dapat dilihat bahwa dikarenakan jumlah subblok yang dipergunakan berjumlah 3 untuk tiap solusi, maka perbandingan juga menggunakan nilai rata-rata sisa space tak terpakai. Nilai yang semakin kecil menunjukkan subblok yang mampu menampung barang dalam jumlah maksimum dengan sisa space tak terpakai yang lebih kecil. Barang selanjutnya disimpan dengan menekan tombol simpan pada form visualisasi dengan pilihan solusi terbaik, yaitu solusi I. Hasil penyimpanan akan dipergunakan pada pengujian tahap selanjutnya.

4.2.2

Pemasukan Dengan Adanya Barang Sejenis Setelah penyimpanan hasil pengujian pertama, sisa space dari tiap

subblok akan diupdate sesuai dengan volume total barang yang masuk ke dalam subblok. Perubahan yang telah disimpan pada pengujian I akan dipergunakan pada pengujian II. Volume setelah penyimpanan pengujian I dapat dilihat pada Tabel 4.4 yang ditandai dengan cetak miring dan ditebalkan.

Tabel 4.4. Daftar Subblok Pengujian II Subblok MB01 MC01 MD01 MB03 MC03 MD03 MB05 MC05 MD05 Volume sisa (Cm 3) 39.660.000 15.793.200 51.558.000 39.660.000 59.490.000 34.045.800 39.660.000 59.490.000 49.570.600 Prioritas 1 1 1 2 2 2 3 3 3

Pada pengujian II, dilakukan pemasukan barang yang telah dimasukkan sebelumnya. Dari pengujian ini dapat diperlihatkan bagaimana sistem mengikuti pola penyusunan dalam gudang yang akan mengelompokkan barang sejenis (Id sama). Selain itu dapat dilihat reaksi dari sistem bila terjadi kelebihan barang saat pengisian subblok yang sejenis. Daftar barang yang dimasukkan dapat dilihat pada Tabel 4.5.

45

Tabel 4.5. Daftar Barang Masukan Pengujian II Volume Volume 3 Prioritas Jumlah Satuan (Cm ) total (Cm3) 001B00001 Basketball Playset 145.656 1 120 17.478.720 002G00001 Gasing z-7 175.122 2 10 1.751.220 Id Barang Nama Barang Pada pengujian II, pemasukan barang diperlakukan sebagai transaksi pemasukan barang hasil pembelian (lihat Gambar 4.5). Proses yang berlangsung sama seperti pada pengujian I hingga munculnya form visualisasi.

Gambar 4.5 Pemasukan Data Pengujian II

Pada pengujian II, barang yang telah masuk pada pengujian I akan masuk kembali ke pengujian II. Dari sini sistem akan melakukan proses pengaturan peletakan tetapi dengan terlebih dahulu meletakkan barang sesuai dengan kelompoknya. Bila subblok tidak mencukupi, baru dilakukan perbandingan peletakan pada subblok lain. Hasil pengaturan peletakan dapat dilihat pada Tabel 4.6. Dari hasil pengujian dapat dilihat bahwa sistem mengusulkan peletakan pada lokasi barang yang pernah sudah diisi oleh pengujian I. Untuk barang dengan Id 002G00001 peletakan dapat dilakukan secara keseluruhan karena space yang memadai. Tetapi untuk barang dengan id 001B00001 subblok yang ditempati

46

sudah tidak memadai oleh karena itu, dilakukan perbandingan dengan dua subblok lain (dengan nomor prioritas yang sama) untuk pengisian barang yang tersisa yaitu sebanyak 12 buah. Hasil perbandingan pengaturan peletakan yang dilakukan sistem untuk mencari subblok terbaik bagi barang 001B00001 dapat dilihat pada Gambar 4.6.

Tabel 4.6. Daftar Solusi Hasil Pengujian II Subblok Solusi I MD03 MC01 MB01 Solusi II MD03 MC01 MD01 002G00001 001B00001 001B00001 Gasing z-7 Basketball Playset Basketball Playset 10 108 12 002G00001 001B00001 001B00001 Gasing z-7 Basketball Playset Basketball Playset 10 108 12 Id Barang Nama Barang Jumlah

Solusi 1: Jumlah subblok hasil pengaturan i:1 Rata-rata sisa space tak terpakai :41539,9999999959 Solusi 2: Jumlah subblok hasil pengaturan:1 Rata-rata sisa space tak terpakai :141404

Gambar 4.6 Hasil Perbandingan dalam Pengujian II Pengaturan Peletakan

Dari hasil pengujian II dapat dilihat bahwa perbandingan tidak lagi dilakukan untuk barang 002G00001 atau keseluruhan dari barang 001B00001 melainkan 12 barang 001B00001 yang sudah tidak dapat ditampung oleh subblok MC01. Hasil solusi I disimpan dan selanjutnya akan mengupdate semua Tabel yang berhubungan dengan transaksi pemasukan barang. Pada Tabel 4.7. berikut diperlihatkan perubahan pada sisa space oleh pengujian II.

47

Tabel 4.7. Daftar Subblok Pengujian II Subblok MB01 MC01 MD01 MB03 MC03 MD03 MB05 MC05 MD05 4.2.3 Volume sisa (Cm 3) 37.912.100 15.793.200 51.558.000 39.660.000 62.352 32.294.600 39.660.000 59.490.000 49.570.600 Prioritas 1 1 1 2 2 2 3 3 3

Pemasukan Barang Secara Langsung Dari dua pengujian yang dilakukan, terlihat bahwa barang yang

dimasukkan pada form akan melalui proses pengaturan peletakan. User dapat pula melakukan penentuan langsung lokasi dari barang yang dimasukkan tanpa pengaturan peletakan. Pada pengujian III ini akan diperlihatkan bagaimana pemasukan barang dengan cara penentuan subblok langsung. Ciri dari pengisian secara langsung adalah dengan mengisikan field subblok pada form masuk barang. Setelah itu user tinggal melakukan penekanan tombol selesai. Data barang yang dimasukkan dapat dilihat pada Tabel 4.8.

Tabel 4.8. Daftar Barang Masukan Pengujian III Volume Volume 3 Prioritas Jumlah Satuan (Cm ) total (Cm3) 001B00001 Basketball Playset 145.656 1 10 1.456.560 003K00001 Kerincing baby 186.354 3 10 1.863.540 Id Barang Nama Barang Pada daftar barang yang dimasukkan dalam pengujian III adalah barang 001B00001 (prioritas 1) yang telah dimasukkan dua kali dalam gudang melalui proses pengaturan peletakan sementara barang 003K00001 (prioritas 3) adalah barang baru. Pada pengujian ini diperlihatkan bagaimana barang dengan prioritas 1 dan 3 saat dimasukkan secara langsung ke dalam subblok tidak akan terpengaruh oleh proses pengaturan peletakan (lihat Gambar 4.7). Barang akan

48

dimasukkan pada subblok MB03 yang memiliki prioritas 2. saat barang dimasukkan, akan dilakukan pemeriksaan terhadap kecukupan lokasi, bila tidak cukup maka proses penyimpanan tidak dapat dilakukan.

Gambar 4.7 Solusi Hasil Pengujian III

Pada gambar visualisasi dapat dilihat bahwa hasil masukan data langsung diarahkan ke MB03, sementara memo yang pada dua pengujian sebelumnya berisi data perbandingan pengaturan peletakan juga kosong. Namun pada volume sisa space milik subblok MB03 telah berubah menjadi 36.339.900. Untuk melihat keberadaan barang 001B00001 dapat juga melalui menu pencarian /pencarian dan visualisasi. Pada tab Barang dapat dilihat lokasi dari barang 001B00001 sebanyak 3 subblok dari hasil 3 pengujian (lihat Gambar 4.8).

49

Gambar 4.8 Solusi Hasil Pencarian Barang 001B00001

4.2.4

Pengeluaran Barang Dengan Metode FIFO Untuk pengeluaran barang dengan metode First In First Out (FIFO)

dapat diperlihatkan pada pengujian ke-IV (lihat Gambar 4.9). Pada pengujian ini akan diperlihatkan bagaimana pengeluaran terhadap barang yang telah dimasukkan pada pengujian sebelumnya. Daftar barang yang dikeluarkan akan diperlihatkan pada Tabel 4.9.

Tabel 4.9. Daftar Barang Pengeluaran Pengujian IV Volume Volume Prioritas Jumlah Satuan (Cm3) total (Cm3) 001B00001 Basketball Playset 145.656 1 410 59.718.960 002G00001 Gasing z-7 175.122 2 10 1.751.220 Id Barang Nama Barang Pada daftar barang yang akan dikeluarkan, terlihat bahwa barang 001B00001 yang pada pengujian I dimasukkan 300 akan dikeluarkan sebanyak 410. Sudah tentu pemasukan pada pengujian I tidak akan mencukupi sehingga akan ditambah dengan barang yang dimasukkan dari pengujian II. Bila jumlah barang yang dimasukkan tidak mencukupi dengan keseluruhan barang yang ada dalam gudang maka akan muncul pesan error. Setelah tombol selesai ditekan akan muncul form konfirmasi. Form konfirmasi akan memperlihatkan data barang yang akan dilibatkan dalam proses FIFO. Untuk melanjutkan, user dapat memilih tombol lanjutkan (lihat Gambar 4.10). Setelah tombol lanjutkan ditekan maka akan diperlihakan daftar pengeluaran dari barang yang dimasukkan. Dari daftar ini dapat terlihat pengeluaran barang yang dilakukan berdasarkan tanggal pemasukan barang dan

50

subblok tempat pengambilannya (lihat Gambar 4.10).

Gambar 4.9 Pengeluaran Barang Pengujian IV

Gambar 4.10 Konfirmasi Pengeluaran Secara FIFO

Dari form daftar pengeluaran barang (lihat Gambar 4.10) dapat dilihat bahwa untuk pengeluaran barang 001B00001 dilakukan pada dua kali pemasukan dan dua buah subblok untuk pengeluarannya. Sementara untuk barang 002G00002 hanya dikeluarkan dari tanggal masuk pertama. Untuk subblok sendiri akan terjadi update penambahan sisa space subblok yang disebabkan oleh pengeluaran barang. Hasil dapat dilihat pada Tabel 4.10.

51

Gambar 4.11 Daftar Pengeluaran Barang Secara FIFO

Tabel 4.10. Daftar Perubahan Subblok Pengujian IV Subblok MB01 MC01 MD03 4.2.5 Volume sisa (Cm 3) 38203400 59490000 34045800 Prioritas 1 1 2

Pengeluaran Barang Tanpa Metode FIFO Pada pengujian V, dilakukan pengeluaran barang tanpa menggunakan

metode FIFO (lihat Gambar 4.12). Untuk mengeluarkan barang tanpa metode FIFO, diperlukan pengisian data tanggal masuk dan subblok dari barang. Untuk melakukan pengisian, user cukup menekan tombol pada grid atau dengan menekan Ctrl+A saat cursor berada pada kolom yang ingin diisikan. Daftar barang yang akan dikeluarkan diperlihatkan pada Tabel 4.11.

Tabel 4.11. Daftar Barang Pengeluaran Pengujian V Id Barang Nama Barang Volume Volume Prioritas Jumlah Satuan (Cm3) total (Cm3) 66.248 3 10 662.480 175.122 2 10 1.751.220

004H00001 Handphone kitty 002G00001 Gasing z-7

52

Gambar 4.12 Pengisian Pengeluaran Barang Pengujian V

Setelah tombol selesai ditekan, maka akan dilakukan pengurangan update dari berbagai tabel dalam sistem. Pengeluaran yang dilakukan pada barang 002G00002 merupakan barang yang masuk pada pengujian II. Bila dipakai metode FIFO, tanggal masuk dari barang adalah 04/04/2004. Daftar pengeluaran tanpa metode FIFO dapat dilihat pada Gambar 4.13.

Gambar 4.13 Daftar Pengeluaran Barang Pengujian V

53

4.3 Pengujian oleh User Pengujian terhadap kelayakan aplikasi program untuk dipergunakan pada sistem inventory UD Aneka Mainan. Pengujian dilakukan dengan

mengujicobakan program pada user (responden). Data transaksi yang diuji adalah data suatu hari yang dianggap bisa mewakili seluruh transaksi yang dapat dukung oleh aplikasi program (sebanyak 20 transaksi) dan sisa stok seminggu sebelumnya. Barang yang diujikan adalah barang yang dianggap memiliki frekuensi keluar masuk yang tinggi terlebih dahulu. Selain menggunakan data transaksi sebenaranya, juga dilakukan pengujian dengan menggunakan kasuskasus khusus yang jarang atau tidak pernah terjadi (bukan transaksi sebenarnya). User terlebih dahulu diperlihatkan cara penggunaan dari aplikasi program secara bergantian. Setelah user dianggap mulai mengerti penggunaan dari sistem maka selanjutnya user diberikan angket untuk memberikan penilaian. Responden dalam penelitian ini dapat dilihat pada Tabel 4.12. Nilai interval untuk penilaian kuisioner berada dalam kisaran interval 1-5. Penjelasan tentang penilaian dapat dilihat pada Tabel 4.13.

Tabel 4.12. Data Responden Nama Ahwani Acay Nadia Ilham Budi Karunia Jabatan Manejer Kepala Gudang Staf administrasi gudang Staf administrasi gudang

Tabel 4.13. Penjelasan penilaian Nilai 1 2 3 4 5 Keterangan Sangat Buruk Buruk Cukup Baik Baik Sangat baik

Hasil akumulasi dari angket hasil pengujian adalah dapat dilihat pada Tabel 4.14. Nilai rata-rata keseluruhan aplikasi program yaitu 3.95 dari nilai maksimum (terbaik) yaitu 5. Dengan demikian aplikasi program dapat dikatakan

54

cukup baik dan layak untuk mulai digunakan. Namun untuk penggunaan akan terlebih dahulu melalui ujicoba lapangan penuh (beta test). Sistem akan dipergunakan pada semua transaksi selama 1 bulan bersamaan dengan pencatatan transaksi manual untuk menjaga kemungkinan error atau bug yang tidak diketahui selama pembuatan dan pengujian sistem pada penelitian

Tabel 4.14. Hasil Akumulasi Angket Kriteria Manfaat Efisiensi waktu yang diperoleh Efisiensi penggunaan tenaga kerja Dukungan terhadap kerja pergudangan Interface Kemudahan mempelajari penggunaan Kenyamanan penggunaan Tampilan fisik dari sistem Kinerja Sistem Kecepatan kerja sistem Kemampuan menangani kasus dalam pergudangan Kemampuan memperoleh solusi lokasi dengan mengikuti aturan penempatan gudang Visulisasi gudang dalam mendukung sistem inventory 3 4 4 3 4 5 3 4 3.5 4 5 5 3 4 4 4 3 3 3 4 5 3 4 4.25 3.25 3.833 5 3 4 5 4 4 4 4 3 5 5 4 4.75 4 3.75 4.167 Responden I II III IV Rata-rata

Rata-rata nilai manfaat

Rata-rata nilai interface

3.5

4.5 3.875 3.958

Rata-rata nilai kinerja Total rata-rata nilai keseluruhan

BAB 5. KESIMPULAN DAN SARAN


5.1 Kesimpulan Berdasarkan hasil pengujian dapat disimpulkan beberapa hal sebagai berikut: Manfaat yang diperoleh dari penerapan aplikasi program secara keseluruhan adalah baik. Hal itu dapat dilihat dari rata-rata penilaian sebesar 4,167 dengan nilai tertinggi sebesar 5. Dimana sistem dianggap dapat memberikan bantuan dalam hal efisiensi waktu kegiatan pencatatan dan pelaporan (4,75) serta efisiensi penggunaan tenaga kerja (4). Untuk dukungan terhadap kegiatan pergudangan responden merasakan cukup baik (3,75). Dari segi interface sistem dinyatakan paling baik dalam kenyamanan penggunaan (4,25) dan kemudahan pembelajaran (4). Yang paling rendah dari keseluruhan adalah tampilan fisik (3,25). Secara keseluruhan sistem dianggap cukup baik (3,833). Dari segi kinerja, sistem dianggap cukup baik (3,875) terutama dalam hal dukungan visualisasi (4,5) dan kemampuan menangani kasus yang terjadi dalam pergudangan (4). Untuk kecepatan dan kemampuan memberikan solusi responden menyatakan cukup baik (3,5). Secara keseluruhan sistem dianggap cukup baik dan layak untuk dipergunakan pada pergudangan UD Aneka Mainan (3.958).

5.2 Saran Setelah melakukan evaluasi terhadap sistem secara keseluruhan, diharapkan penelitian ini dapat dikembangkan lebih lanjut dengan saran-saran pengembangan sebagai berikut: Sistem pengaturan peletakan perlu dipertimbangkan untuk dikembangkan menjadi optimasi dalam penggunaan ruang. Untuk optimasi perlu

dipertimbangakan dengan menggabungkan metode kombinasi bactracking yang telah dipergunakan atau dengan metode lain, tetapi perlu diperhatikan penggunaan waktu selama proses optimasi dan kehandalannya dalam penerapan di lapangan.

55

56

Untuk pengaturan pengeluaran khususnya dengan metode First In First Out, perlu diperhatikan dalam teknis pelaksanaannya di lapangan mengingat tidak semua barang yang telah datang lebih awal dapat dikeluarkan lebih dahulu terutama bila tertumpuk oleh barang dengan identitas sama yang tiba belakangan.

Untuk mempermudah perolehan laporan kepada UD Aneka Mainan, sistem dapat dikembangkan lebih lanjut dengan menggunakan distributed database melalui jaringan internet khususnya replikasi yang didukung oleh MySQL sehingga informasi seperti laporan stok tidak perlu menunggu laporan tertulis yang diantarkan dari gudang melainkan dapat diakses dari jarak jauh. Selain itu, dengan cara demikian sistem inventory dapat dipadukan dengan sistem pembelian dan penjualan yang ada pada UD Aneka Mainan.

Untuk sistem inventory perlu dipikirkan pengembangan fitur untuk penjadwalan pengiriman barang sesuai dengan pemesanan. Program perlu untuk terus dipantau kinerjanya pada saat pengujian lapangan secara penuh, hingga dapat diyakini bahwa tidak terdapat masalah dalam penerapan sistem.

57

DAFTAR PUSTAKA
[1] Axmark, David. MySQL Manual version 4.0.5. MySQL AB, 2002. www.mysql.com [2] Laxxuss. Delphi 7 Developers Guide. Borland Software Corporation. 2002 [3] Byelkin, Oleksandr. Subqueries in MySQL. MySQL AB, 2003.

<www.mysql.com> [4] Hoffman, James. Introduction to Structure Query language version 4.66 . 4 July 2001. < http://www.highcroft.com/highcroft/hc_links.html > [5] Kadir Abdul. Dasar pemrograman Delphi 5.0 jilid I. Andi Yogyakarta. Yogyakarta, 2001 [6] Kadir Abdul. Dasar pemrograman Delphi 5.0 jilid II. Andi Yogyakarta. Yogyakarta, 2001 [7] Cantu, Marco. Mastering Delphi 7. Sybex, 2003 [8] McLeod, Jr., Raymond and Schell, George. International Edition

Management Information Systems (eight edition). Prenhall, 1979. [9] Molofee, Jeff. OpenGL Tutorial. Neon Helium Productions, 2000. <www. NeHe.com> [10] Oursland, Allan. Using OpenGL in Visual C++. Interface Technologies, 2000 [11] SiliconGraphics Computer Systems. OpenGL the industrys foundation for high performance graphic. California: SiliconGraphics, 1998.

www.opengl.org [12] Supardi, Yuniar, Ir. C & Flowchart Lewat Praktek. Dinastindo. Jakarta, 2001

Anda mungkin juga menyukai