• Tidak ada hasil yang ditemukan

TA : Rancang Bangun Aplikasi Cutting Stock Optimization dengan Metode Integer Linear Programming pada Toko Kaca Rejeki.

N/A
N/A
Protected

Academic year: 2017

Membagikan "TA : Rancang Bangun Aplikasi Cutting Stock Optimization dengan Metode Integer Linear Programming pada Toko Kaca Rejeki."

Copied!
119
0
0

Teks penuh

(1)

RANCANG BANGUN APLIKASI CUTTING STOCK OPTIMIZATION DENGAN METODE INTEGER LINEAR PROGRAMMING PADA

TOKO KACA REJEKI

TUGAS AKHIR

SEKOLAH TINGGI

MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA

2014

(2)

TOKO KACA REJEKI

TUGAS AKHIR

Diajukan sebagai salah satu syarat untuk menyelesaikan Program Sarjana Komputer

Oleh:

SEKOLAH TINGGI

MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA

2014

(3)

ABSTRAK

Seiiring dengan banyaknya jumlah pembangunan rumah dan gedung, dibutuhkan banyak suplai-suplai bahan-bahan bangunan, termasuk yang paling penting adalah kaca. Untuk itu, toko kaca harus bisa menyediakan kaca sesuai dengan kebutuhan – kebutuhan tersebut. Dalam proses pemotongan kaca seringkali terdapat sisa pemotongan (waste) yang dirasa cukup besar. Hal ini dikarenakan pemotongan tidak mempertimbangkan sisa kaca dan juga ketidaktelitian dalam menentukan pola pemotongan, sehingga menghasilkan sisa pemotongan yang besar juga.

Solusi yang dapat digunakan untuk menyelesaikan masalah tersebut adalah dengan menggunakan metode Integer Linear Programming agar proses pemotongan menjadi lebih efektif dan efisien. Efektif yang dimaksud adalah memaksimalkan luas bidang kaca, sehingga bisa terpakai secara optimal. Efisien yang dimaksud adalah pengurangan biaya material yang muncul dari sisa kaca yang terbuang

Dengan mengoptimasi pemotongan menggunakan metode Integer Linear

Programming, didapatkan luas sisa kaca antara hasil dari perhitungan secara

manual dan perhitungan menggunakan aplikasi mengalami penurunan rata-rata sebesar 56, 45%

Keywords: Cutting Stock Optimization, Integer Linear Programming

(4)

ABSTRAK ... vii

KATA PENGANTAR ... viii

DAFTAR ISI ... x

DAFTAR TABEL ... xiii

DAFTAR GAMBAR ... xv

DAFTAR LAMPIRAN ... xvii

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Perumusan Masalah ... 2

1.3 Batasan Masalah ... 3

1.4 Tujuan ... 3

1.5 Sistematika Penulisan ... 3

BAB II LANDASAN TEORI ... 5

2.1 Aplikasi ... 5

2.2 Cutting Stock Optimization ... 5

2.2.1. Karakteristik Pemotongan Bahan (Cutting Stock) ... 5

2.2.2. Pola Pemotongan ... 6

2.3 Pembentukan Fungsi Tujuan... 7

2.3.1. Pengembangan Model Matematis ... 7

2.3.2. Penambahan Batasan Baru ... 7

2.3.3. Identifikasi Variabel ... 9

2.4Integer Linear Programming ... 9

(5)

2.4.1. Metode Simpleks ... 11

2.5 Analisis dan Perancangan Sistem... 13

2.5.1. System Flow... 16

2.5.2. Data Flow Diagram (DFD) ... 17

2.6 Siklus Hidup Pengembangan Sistem ... 19

2.6.1. Tahapan SDLC ... 20

2.6.2. Model SDLC ... 26

BAB III ANALISIS DAN PERANCANGAN SISTEM ... 27

3.1 Analisis Permasalahan ... 27

3.2 Permasalahan ... 30

3.3.Solusi Permasalahan ... 31

3.3.1. Kebutuhan Perangkat Lunak ... 31

3.3.1.1.Elisitasi Kebutuhan (Requirement Elicitation) ... 32

3.3.1.2.Analisis Kebutuhan Administrasi ... 34

3.3.1.3.Analisis Kebutuhan Pemotongan ... 34

3.3.1.4.Spesifikasi Kebutuhan (Requirement Spesification) ... 34

3.3.2.Desain Sistem (Software Design) ... 37

3.3.2.1. Alur Sistem (System Flow) ... 37

3.3.2.2. Context Diagram ... 48

3.3.2.3. Diagram Berjenjang ... 49

3.3.2.4. DataFlowDiagram ... 50

3.3.2.5. EntityRelationshipDiagram ... 56

3.3.2.6. CDM (ConceptualDataModel) ... 56

(6)

3.3.2.9. Perancangan Prosedur dan Program Unit ... 63

3.3.2.10. Studi Kasus Optimasi Pemotongan Kaca ... 70

3.3.2.11. UnitProgram ... 79

3.3.2.12. Flowchart Program ... 81

3.3.2.13.Pseudocode ... 82

BAB IV IMPLEMENTASI DAN EVALUASI ... 84

4.1 Implementasi ... 84

4.2 Penjelasan Penggunaan Aplikasi ... 84

4.2.1 Form Login ... 84

4.2.2 Form Aplikasi Pegguna Sebagai Administrasi ... 86

4.2.3 Form Aplikasi Pengguna Sebagai Bagian Pemotongan ... 89

4.3 Uji Coba Fungsional dan Non Fungsional ... 95

4.4 Evaluasi ... 106

4.4.1 Perhitungan dengan Aplikasi ... 106

4.4.2 Perhitungan manual tanpa Aplikasi ... 108

4.4.3 Perbandingan Hasil Evaluasi ... 110

BAB V PENUTUP ... 112

5.1 Kesimpulan ... 112

5.2 Saran ... 112

DAFTAR PUSTAKA ... 113

LAMPIRAN ... 114

(7)

BAB I PENDAHULUAN

1.1Latar Belakang Masalah

Toko Kaca Rejeki adalah salah satu toko yang menjual berbagai jenis kaca. Toko kaca Rejeki berlokasi di Jl. P.B. Sudirman 186, Kota Banyuwangi, Jawa Timur. Kaca yang dijual umumnya digunakan dalam pembangunan gedung, perabot, atau pembuatan aquarium. Kaca dibedakan menjadi 2 golongan, yaitu kaca lembaran dan kaca potongan. Kaca lembaran adalah kaca yang memiliki ukuran paten dari pabrik. Sedangkan kaca potongan adalah kaca yang memerlukan proses pemotongan terlebih dahulu, sebelum digunakan kembali. Kaca lembaran umumnya dijual ke toko-toko retail yang lebih kecil. Sedangkan kaca potongan adalah sisa-sisa kaca yang telah dipotong dari kaca lembaran.

Seluruh proses transaksi di Toko Kaca Rejeki masih dilakukan secara manual. Proses bisnis pada toko ini dimulai ketika order kaca dari kosumen diterima oleh bagian administrasi. Kemudian dilakukan pengelompokkan pada order kaca tersebut. Order kaca tersebut dikelompokkan menjadi order kaca lembaran dan order kaca potongan. Apabila order kaca adalah jenis kaca lembaran, maka kaca bisa langsung diambil dari gudang. Apabila order kaca merupakan jenis kaca potongan, maka order diberikan ke bagian pemotongan untuk dilakukan proses pemotongan. Setelah kaca dipotong, maka kaca diberikan kepada konsumen.

Permasalahan muncul ketika didapati order kaca potongan dalam jumlah yang besar. Order kaca potongan dalam jumlah besar adalah kaca untuk jendela gedung atau aquarium. Pada proses pemotongan, sering terjadi ketidaktelitian dalam menganalisa

(8)

polanya. Akibatnya sisa kaca yang dihasilkan kurang minimal. Hal tersebut baru dapat diketahui ketika dilakukan perhitungan dan penggambaran secara spesifik, dari pola yang akan dipotong. Setelah dilakukan perbandingan diketahui bahwa terjadi ketidakefektif dan ketidakefisienan pemotongan. Hal itu menyebabkan sisa kaca terbuang lebih banyak, sehingga menimbulkan biaya tambahan. Dampak dari permasalahan tersebut tidak terlihat kasat mata. Apabila dilakukan perhitungan yang lebih detil dari contoh kasus pemotongan kaca untuk aquarium dengan ukuran 80 x 40 , menghasilkan luas sisa bidang pemotongan sebesar 5317 cm2. Permasalahan seperti ini biasa disebut sebagai permasalahan cutting stock.

Permasalahan cutting stock tersebut kurang diperhatikan oleh pihak toko, karena dampaknya tidak langsung terlihat. Untuk melakukan cutting stock optimization, dibutuhkan subuah aplikasi yang dapat memberikan manfaat perhitungan dalam mengoptimasi proses pemotongan kaca.

Dengan mengoptimasi proses pemotongan kaca, diharapkan dapat meningkatkan proses pemotongan menjadi lebih efektif dan efisien. Efektif yang dimaksud adalah mengenai memaksimalkan luas bidang kaca, sehingga bisa terpakai secara optimal. Efisien yang dimaksud adalah pengurangan biaya material yang muncul dari sisa kaca yang terbuang.

1.2Perumusan Masalah

(9)

3

1.3Batasan Masalah

Dalam pembuatan Tugas Akhir ini, ruang lingkup permasalahan dibatasi pada: a. Kaca yang digunakan hanya berbentuk persegi empat.

b. Biaya variabel yang digunakan hanya biaya material dari sisa kaca yang terbuang.

c. Tidak membahas perhitungan harga kaca.

1.4Tujuan

Berdasarkan rumusan masalah diatas, maka tujuan dari penyusunan tugas akhir ini adalah menghasilkan rancang bangun aplikasi yang dapat mengoptimasi pemotongan kaca dengan metode Integer Linear Programming.

1.5Sistematika Penulisan

Sistematika penulisan yang digunakan dalam penyusunan laporan Tugas Akhir ini dibedakan dengan pembagian bab – bab dengan rincian sebagai berikut:

BAB I : PENDAHULUAN

Dalam bab ini dijelaskan tentang latar belakang, perumusan masalah, pembatasan masalah dan tujuan tugas akhir ini.

BAB II : LANDASAN TEORI

(10)

BAB III : PERANCANGAN SISTEM

Dalam bab ini dijelaskan tentang tahap-tahap yang dikerjakan dalam penyelesaian Tugas Akhir mulai dari observasi, pendahuluan, identifikasi masalah dan tujuan, studi pustaka, pengumpulan data, klasifikasi data, analisis kebutuhan sistem, perancangan sistem yang meliputi desain sistem flow yang digunakan, desain DFD, desain ERD, struktur basis data, desain antar muka, implementasi dan evaluasi sampai didapatkan suatu kesimpulan dan saran. BAB IV : IMPLEMENTASI DAN EVALUASI SISTEM

Dalam bab ini dijelaskan tentang evaluasi dari aplikasi yang dibuat, proses implementasi dari aplikasi yang telah melalui tahap evaluasi dari Server sampai

Client. BAB V : PENUTUP

(11)

BAB II

LANDASAN TEORI

2.1. Aplikasi

Aplikasi berasal dari kata application yang artinya penerapan, lamaran, penggunaan. Secara istilah aplikasi adalah program siap pakai yang direka untuk melaksanakan suatu fungsi bagi pengguna atau aplikasi yang lain dan dapat digunakan oleh sasaran yang dituju.

Menurut Whitten ( dalam Kristanto, 1994 : 60 ) Perancangan Sistem adalah “Proses dimana keperluan pengguna dirubah ke dalam bentuk paket perangkat lunak dan atau kedalam spesifikasi pada komputer yang berdasarkan pada sistem informasi.”. 2.2. Cutting Stock Optimization

Cutting stock optimization merupakan permasalahan optimasi dalam

pengkombinasian, sehingga dapat ditentukan solusi dari beberapa solusi yang mungkin, yang memenuhi fungsi pembatas yang ada. Solusi yang ditawarkan adalah dengan mengkombinasikan beberapa pieces dengan ukuran berbeda ke dalam persegi empat (bahan baku) sehingga didapatkan sisa kaca seminimal mungkin.

2.2.1. Karakteristik Pemotongan Bahan (Cutting Stock) Karakteristik pemotongan bahan adalah :

a. Terdapat bahan baku yang berbentuk persegi empat (selanjutnya disebut

rectangle) yang mempunyai ukuran tertentu.

b. Terdapat m jenis potongan yang dihasilkan (yang selanjutnya disebut dengan

pieces) yang masing-masing berukuran p dengan jumlah permintaan n tertentu.

(12)

c. Setiap potong mempunyai nilai tertentu yang bisa berupa keuntungan yang diperoleh atau berupa ukuran luas dalam upaya meminimasi sisa bahan baku.

d. Berusaha membentuk suatu layout potong yang meminimumkan fungsi tujuan yang melekat pada setiap potong yang ada.

2.2.2. Pola Pemotongan a. Guillotine Pattern

Guillotine Pattern merupakan pola pemotongan yang dimulai dari satu sisi segi

empat yang kemudian dilanjutkan pada sisi lainnya. Pemotongan pertama dengan tipe

Guillotine Pattern adalah dengan memotong bahan baku dengan panjang atau lebar

yang sama. Pemotongan tersebut menghasilkan dua atau lebih potongan yang mempunyai panjang atau lebar yang sama, bukan kedua-duanya.

b. Non-guillotine Pattern

Pemotongan dengan tipe non-guillotine dilakukan apabila ukuran pieces yang diinginkan tidak memungkinkan untuk digabung dengan pieces yang lain.

c. Pola Dua Tahap Pemotongan (Two Stage Pattern)

Tahap pertama, pemotongan secara paralel atau pemotongan bahan secara horizontal, sehingga rectangle terbagi menjadi beberapa rectangle dengan panjang yang sama. Tahap kedua adalah pemotongan satu persatu bagian rectangle.

d. Pola Tiga Tahap Pemotongan (Three Stage Pattern)

(13)

7

pemotongan satu persatu yang terlebih dahulu mengubah arah pemotongan. Tahap ketiga, pemotongan dilakukan pada bagian yang menghasilkan pieces.

2.3. Pembentukan Fungsi Tujuan

Sifat yang perlu diperhatikan dalam memilih kriteria untuk fungsi tujuan menurut Simatupang ( 1995 : 80-81) adalah sebagai berikut :

a. Lengkap

b. Operasional

c. Tidak Berlebihan

d. Minimum

2.3.1. Pengembangan Model Sistematis

Pengembangan model matematis dapat dimulai dengan menjawab ketiga pertanyaan berikut : Menurut Hamdy ( 1996 : 17 )

a. Apa yang diusahakan untuk ditentukan oleh model tersebut? Dengan kata lain, apa variable (yang tidak diketahui) dari masalah tersebut?

b. Apa batasan yang harus dikenakan atas variable untuk memenuhi batasan sistem yang dimodel tersebut?

c. Apa tujuan (sasaran) yang harus dicapai untuk menentukan pemecahan optimum (terbaik) dari semua nilai yang layak dari variable tersebut?

2.3.2. Penambahan Batasan Baru

Penambahan batasan baru dapat menghasilkan satu di antara dua kondisi : Menurut Hamdy ( 1996 : 172 )

(14)

b. Batasan tersebut tidak dipenuhi oleh pemecahan saat ini,. Dalam kasus ini pemecahan baru diperoleh dengan metode simpleks dual.

Yang kita lakukan disini adalah mendapatkan kembali kelayakan. Pertama – tama, tempatkan batasan baru tersebut dalam bentuk standar dengan menambahkan variabel slack atau surplus sebagaimana diperlukan. Lalu substitusi keluar setiap variabel dasar saat ini dalam batasan tersebut dalam bentuk variable non dasar (saat ini). Langkah terakhir adalah menambahkan batasan yag dimodifikasi ke tabel optimum saat ini dan menerapkan simpleks dual untuk memperoleh kembali kelayakan.

Batasan yang dimodifikasi ini sekarang ditambahkan ke tabel optimal saat ini seperti diberikan berikut ini:

Tabel 2.1 Kombinasi Potongan

Dasar X1 X2 X3 X4 X5 X6 X7 Pemecahan

Z 0 0 1/3 4/3 0 0 0 38/3

X2 0 1 2/3 -1/3 0 0 0 4/3

X1 1 0 -1/3 2/3 0 0 0 10/3

X5 0 0 -1 1 1 0 0 3

X6 0 0 -2/3 1/3 0 1 0 2/3

X7 0 0 1/3 -2/3 0 0 1 -1/3

Dimana variabel :

(15)

9

X5 = Jumlah pola potong yang kelima. X6 = Jumlah pola potong yang keenam. X7 = Jumlah pola potong yang ketujuh.

Jadi batasan baru tersebut yang diekspresikan dalam bentuk variabel nondasar menjadi: (10/3) + (1/3)x3 – (2/3)x4 +x7 = 3

(1/3)x3 – (2/3)x4 + x7 = -1/3 2.3.3. Identifikasi Variabel

Dalam pemodelan, variabel yang teridentifikasikan hendaknya dapat digolongkan menjadi empat jenis yaitu : Menurut Simatupang (1995 : 94-95)

a. Variabel nominal

b. Variabel ordinal

c. Variabel interval

d. Variabel rasio

2.4. Integer Linear Programming

Linear Programming merupakan metode atau teknik matematik yang digunakan

untuk membantu dalam pengambilan keputusan. Di dalam linear programming, seluruh fungsinya (fungsi objektif serta fungsi pembatas) haruslah linear.

Terdapat empat asumsi dasar dalam penyelesaian masalah dengan menggunakan model

linear programming, yaitu : Menurut Lieberman dkk ( 1995 : 38-44)

a. Proporsionality.

b. Divisibility.

c. Addivity.

(16)

Integer Programming (IP) merupakan bentuk lain dari Linear Programming

(LP) yang muncul karena tidak semua variabel keputusan dapat berupa bilangan pecahan dengan kata lain asumsi divisibility melemah atau hilang sama sekali.

Metode yang digunakan untuk memaksa pemecahan optimum dari linear programming

yang dilonggarkan untuk bergerak ke arah pemecahan integer yang diinginkan adalah

branch & bound. Algoritma Branch & Bound berlaku baik untuk masalah integer murni

maupun masalah integer campuran. Keuntungan utamanya adalah bahwa batas atas tersebut dapat diestimasi dengan cepat dan dengan perhitungan minimal.

Tahapan yang dilakukan dalam algoritma branch & bound adalah sebagai berikut : Menurut Dimyati dkk ( 2003 : 217-227)

a. Branching

Apabila dari penyelesaian LP relaksasi diperoleh nilai variabel yang tidak

integer, maka dilakukan branching atau pencabangan. Pencabangan dilakukan pada

variabel yang bernilai pecahan atau tidak integer. Apabila terdapat lebih dari satu variabel yang bernilai pecahan, maka pilih secara sembarang (dari variabel pecahan tersebut) variabel yang akan dilakukan pencabangan.

b. Bounding

(17)

11

c. Fathoming

Ada tiga situasi yang menyebabkan suatu subpersoalan fathomed, yaitu : a. Apabila subpersoalan tersebut tidak feasible.

b. Apabila subpersoalan itu memberikan solusi optimal dimana seluruh variabelnya berharga integer.

c. Apabila nilai z optimal untuk subpersoalan itu tidak lebih baik dari nilai z optimal subpersoalan lain (dalam persoalan maksimasi berarti nilai z optimal dari subpersoalan itu tidak lebih besar daripada batas bawah yang telah diperoleh).

Apabila subpersoalan berada dalam situasi a atau c maka subpersoalan tersebut dapat diabaikan atau dieliminasi dari pertimbangan selanjutnya.

2.4.1 Metode Simpleks

Karena kesulitan menggambarkan grafik berdimensi banyak maka penyelesaian masalah pemrograman linier yang melibatkan lebih dari dua variable menjadi tidak praktis atau tidak mungkin. Dalam keadaan ini kebutuhan metode solusi yang lebih umum menjadi nyata. Metode umum ini dikenal dengan nama Algoritma Simpleks yang dirancang untuk menyelesaikan seluruh masalah program linier, baik yang melibatkan dua variable maupun lebih dua variabel.

Penyelesaian masalah pemrograman linear menggunakan metode simpleks ini melalui perhitungan ulang (iteration) dimana langkah langkah perhitungan yang sama diulang berkali-kali sebelum hasil optimum dicapai.

(18)

a. Dimulai pada suatu titik pojok yang layak, biasanya titik asal (yang disebut sebagai solusi awal).

b. Bergerak dari suatu titik ke pojok yang lain yang berdekatan, pergerakan ini akan menghasilkan nilai fungsi tujuan yang lebih baik (meningkatkan untuk masalah maksimasi dan menurunkan untuk masalah minimasi). Jika solusi yang lebih baik telah diperoleh, prosedur simpleks dengan sendirinya akan menghilangkan semua solusi – solusi lain yang kurang baik.

c. Proses ini dilakukan berulang – ulang sampai suatu solusi yang lebih baik tak dapat ditemukan. Proses simpleks kemudian berhenti dan solusi optimum diperoleh.

Mengubah bentuk baku model pemrograman linear ke dalam bentuk tabel akan memudahkan proses perhitungan simpleks. Langkah – langkah perhitungan dalam algoritma simpleks adalah :

a. Berdasar bentuk baku, tentukan solusi awal, dengan menetapkan ( n – m ) variable nonbasis sama dengan nol. Dimana n jumlah variable dan m banyaknya kendala.

b. Pilih sebuah entering variable diantara yang sedang menjadi variabel nonbasis, yang jika dinaikkan diatas nol dapat memperbaiki nilai fungsi tujuan. Jika tak ada, berhenti berarti solusi sudah optimal. Jika tidak dilanjutkan ke langkah 1. c. Plih sebuah leaving variabel diantara yang sedang menjadi variable basis yang

(19)

13

d. Tentukan solusi yang baru dengan membuat entering variable dan leaving variable menjadi nonbasis. Kembali ke langkah 2.

2.5 Analisis dan Perancangan Sistem

Penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan-permasalahan, kesempatan-kesempatan, hambatan-hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikannya.

Tahap analisis sistem dilakukan setelah tahap perencanaan sistem (system

planning) dan sebelum tahap desain sistem (system design). Tahap analisis merupakan

tahap yang kritis dan sangat penting, karena kesalahan di dalam tahap ini juga akan menyebabkan kesalahan di tahap selanjutnya.

Dalam tahap analisis sistem terdapat langkah-langkah dasar yang harus dilakukan oleh analis sistem sebagai berikut:

1. Identify, yaitu mengidentifikasi masalah.

2. Understand, yaitu memahami kerja dari sistem yang ada.

3. Analyze, yaitu menganalisis sistem.

4. Report, yaitu membuat laporan hasil analisis.

(20)

sekarang bagi analis sistem untuk memikirkan bagaimana membentuk sistem tersebut. Tahap ini disebut dengan desain sistem.

Menurut Kendall & Kendall Brother (2003), Analisa dan Perancangan Sistem dipergunakan untuk menganalisis, merancang, dan mengimplementasikan peningkatan-peningkatan fungsi bisnis yang dapat dicapai melalui penggunaan sistem informasi terkomputerisasi.

A. Blok Masukan

Input mewakili data yang masuk ke dalam sistem informasi. Input disini termasuk metode-metode dan media untuk menangkap data yang akan dimasukkan, yang dapat berupa dokumen-dokumen dasar.

B. Blok Model

Blok ini terdiri dari kombinasi prosedur, logika dan model matematik yang akan memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah ditentukan untuk menghasilkan keluaran yang diinginkan.

C. Blok Keluaran

(21)

15

D. Blok Teknologi

Teknologi merupakan “kotak alat” (toolbox) dalam sistem informasi. Teknologi digunakan untuk menerima input, menjalankan model, menyimpan dan mengakses data, menghasilkan dan mengirimkan keluaran dan membantu pengendalian dari sistem secara keseluruhan.

E. Blok Basis Data

Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya. Data perlu disimpan di dalam basis data untuk keperluan penyediaan informasi lebih lanjut. Data di dalam basis data perlu diorganisasikan sedemikian rupa, supaya informasi yang dihasilkan berkualitas. Organisasi basis data yang baik juga berguna untuk efisiensi kapasitas penyimpannya. Basis data diakses atau dimanipulasi dengan menggunakan perangkat lunak paket yang disebut dengan DBMS

(Database Management Systems).

F. Blok Kendali

(22)

2.5.1 System Flow

System flow atau bagan alir sistem merupakan bagan yang menunjukkan arus

pekerjaan secara keseluruhan dari sistem. System flow menunjukkan urutan-urutan dari prosedur yang ada di dalam sistem dan menunjukkan apa yang dikerjakan sistem. Simbol-simbol yang digunakan dalam system flow ditunjukkan pada Gambar 2.1.

1. Simbol Dokumen

2. Simbol Kegiatan Manual

3. Simbol Simpanan Offline

4. Simbol Proses

5. Simbol Database

6. Simbol Garis Alir

7. Simbol Penghubung ke Halaman yang Sama

8. Simbol Penghubung ke Halaman Lain

Gambar 2.1 Simbol-Simbol pada System Flow.

1. Simbol dokumen

Menunjukkan dokumen input dan output baik untuk proses manual atau komputer.

2. Simbol kegiatan manual

Menunjukkan pekerjaan manual.

3. Simbol simpanan offline

(23)

17

4. Simbol proses

Menunjukkan kegiatan proses dari operasi program komputer.

5. Simbol database

Menunjukkan tempat untuk menyimpan data hasil operasi komputer.

6. Simbol garis alir

Menunjukkan arus dari proses.

7. Simbol penghubung

Menunjukkan penghubung ke halaman yang masih sama atau ke halaman lain.

2.5.2 Data Flow Diagram (DFD)

DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada atau sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik dimana data tersebut mengalir. DFD merupakan alat yang digunakan pada metodologi pengembangan sistem yang terstruktur dan dapat mengembangkan arus data di dalam sistem dengan terstruktur dan jelas.

A. External Entity atau Boundary

Kesatuan luar merupakan kesatuan (entity) di lingkungan luar sistem yang dapat berupa orang, organisasi atau sistem lainnya yang berada di lingkungan luarnya yang akan memberikan input atau menerima output dari sistem. External entity

(24)

B. Arus Data

Arus Data (data flow) di DFD diberi simbol panah. Arus data ini mengalir di antara proses, simpanan data (data store) dan kesatuan luar (external entity). Arus data ini menunjukkan arus data yang dapat berupa masukan untuk sistem atau hasil dari proses sistem.

C. Proses

Suatu proses adalah kegiatan yang dilakukan oleh orang, mesin, atau komputer dari hasil suatu arus data yang masuk ke dalam proses untuk menghasilkan arus data yang akan keluar dari proses. Simbol proses berupa lingkaran atau persegi panjang dengan sudut-sudut tumpul.

D. Simpanan Data

Simpanan data merupakan simpanan dari data yang dapat berupa hal-hal sebagai berikut, sebagai gambaran:

1. Suatu file atau database di sistem komputer.

2. Suatu arsip atau catatan manual.

3. Suatu kotak tempat data di meja seseorang.

4. Suatu tabel acuan manual.

(25)

19

E. Context Diagram

Context Diagram merupakan langkah pertama dalam pembuatan Data Flow

Diagram. Pada context diagram dijelaskan sistem apa yang dibuat dan entity apa saja

yang digunakan. Dalam context diagram harus ada arus data yang masuk dan arus data yang keluar.

F. Data Flow Diagram (DFD) Level 0

DFD level 0 adalah langkah selanjutnya setelah context diagram. Pada langkah

ini, digambarkan proses-proses yang terjadi pada Sistem Informasi Administrasi Keuangan Siswa.

G. Data Flow Diagram (DFD) Level 1

DFD Level 1 merupakan penjelasan dari DFD level 0. Pada proses ini

dijelaskan proses apa saja yang dilakukan pada setiap proses yang terdapat di DFD level 0.

H. Entity Relational Diagram (ERD)

Entity Relational Diagram (ERD) merupakan penggambaran hubungan antara

beberapa entity yang digunakan untuk merancang database yang akan diperlukan.

2.6. Siklus Hidup Pengembangan Sistem

(26)

mengembangkan sistem-sistem perangkat lunak sebelumnya (berdasarkan best practice

atau cara-cara yang sudah teruji baik).

2.6.1 Tahapan SDLC 1. Elisitasi Kebutuhan

Elisitasi atau pengumpulan kebutuhan merupakan aktivitas awal dalam proses reakayasa perangkat kebutuhan. Sebelum kebutuhan dapat dianalisis, dimodelkan, atau ditetapkan, kebutuhan harus dikumpulkan melalui proses elisitasi. Elisitasi kebutuhan adalah sekumpulan aktivitas yang ditujukan untuk menemukan kebutuhan suatu sistem melalui komunikasi dengan pelanggan, pengguna sistem dan pihak lain yang memiliki kepentingan dalam pengembangan sistem menurut Sommerville and Sawyer (1997).

Sejalan dengan proses rekayasa kebutuhan secara keseluruhan, elisitasi kebutuhan bertujuan untuk :

a) Mengetahui masalah apa saja yang perlu dipecahkan dan mengenali batasan-batasan sistem. Proses-proses dalam pengembangan perangkat lunak sangat ditentukan oleh seberapa dalam dan luas pengetahuan developer tentang permasalahan.

(27)

21

c) Mengenali tujuan dari sistem yaitu sasaran-sasaran yang harus dicapai. Tujuan merupakan sasaran sistem yang harus dipenuhi, penggalian high level goals di awal proses pengembangan sangatlah penting karena bertujuan lebih terfokus pada ranah masalah dan kebutuhan stakeholder dari pada solusi yang dimungkinkan untuk masalah tersebut.

2. Analisis

Tahap Analisis merupakan tahap identifikasi, seleksi, dan perencanaan sistem yang bertujuan untuk mendeteksi dan memberikan solusi antar kebutuhan serta mengetahui ruang lingkup perangkat lunak dan bagaimana perangkat lunak tersebut berinteraksi dengan lingkungan.

Entri Proses

Spesifikasi dan

Definisi Kebutuhan

Validasi Kebutuhan

Prioritisasi Pemahaman Ruang

Pengumpulan Kebutuhan

Resolusi Konflik

Klasifikasi

(28)

Pada Gambar 2.2, diagram tersebut menunjukkan tahapan-tahapan didalam analisis kebutuhan. Didalam proses rekayasa kebutuhan, analisis pun dilakukan dalam setiap aktivitas-aktivitasnya. Aktivitas tersebut antara lain:

a) Domain Understanding

Dalam tahapan ini, pengembang harus mengetahui bagaimana organisasi toko beroperasi dan apa yang menjadi permasalahan pada sistem yang berjalan.

b) Requirements Collection

Tahapan ini merupakan tahapan pengumpulan kebutuhan akan sistem yang akan dibangun sehingga diperlukan adanya interaksi secara intensif dengan stakeholder.

c) Classification

Tahapan ini mengelompokkan hasil dari tahap kebutuhan sehingga menjadi lebih terstruktur untuk selanjutnya diorganisir kedalam kelompok-kelompok yang koheren.

d) Conflict Resolution

Tahapan ini berguna untuk menemukan dan menyelesaikan kebutuhan yang didalamnya terdapat konflik. Konflik tersebut dapat terjadi antara dua stakeholder yang saling terkait tetapi memiliki fasilitas yang tidak sesuai, atau dapat terjadi antara kebutuhan dan sumber daya.

e) Prioritisation

(29)

23

f) Requirements Checking

Menganalisa sekumpulan kebutuhan dari hasil tahapan sebelumnya untuk menverifikasi dan memvalidasi berdasarkan aspek kelengkapan, konsistensi, dan kebutuhan nyata.

Semua jenis kebutuhan yang telah diperoleh tersebut kemudian dituangkan dalam bentuk dokumen yang berisi tentang kebutuhan sistem secara keseluruhan. Dokumen ini menjelaskan secara rinci tentang kesepakatan antara pengembang dengan klien, desain perangkat lunak yang akan dibangun, segala resiko yang akan dihadapi dan jadwal pembuatan perangkat lunak. Dokumen ini sangat berguna bagi pihak yang ingin mengetahui tentang perangkat lunak yang akan dibangun namun tidak mengerti secara teknik karena dokumen ini menggunakan bahasa yang sederhana. Secara umum dokumen ini biasa disebut dengan Software Requirements Spesification (SRS).

3. Desain

Tahap Desain adalah tahapan merancang pemodelan data yang dapat di visualisasikan melalui Entity Relationship Diagram (ERD), Conceptual Data Model

(CDM), dan Physical Data Model (PDM); dan pemodelan proses yang dapat di visualisasikan melalui Data Flow Diagram (DFD) atau melalui Unified Modelling

Language (UML). Dalam tahap ini juga mentransformasikan hasil dari analisis

(30)

4. Construction

Tahap ini melakukan konversi hasil desain ke sistem informasi yang lengkap melalui tahapan coding atau pengkodean termasuk bagaimana, membuat basis data dan menyiapkan prosedur kasus pengujian, mempersiapkan berkas atau file pengujian, pengodean, pengompilasian, memperbaiki dan membersihkan program serta melakukan peninjauan pengujian. Construction ini memiliki beberapa tahapan secara umum yaitu:

a) Software Construction Fundamentals

Pada tahap pertama, dilakukan pendefinisian dasar tentang prinsip-prinsip yang digunakan dalam proses implementasi seperti minimalisasi kompleksitas, mengantisipasi perubahan, dan standar yang digunakan.

b) Managing Construction

Bagian ini mendefinisikan tentang model implementasi yang digunakan, rencana implementasi, dan ukuran pencapaian dari implementasi tersebut.

c) Practical Considerations

Bagian ini membahas tentang desain implementasi yang digunakan, bahasa pemrograman yang digunakan, kualitas dari implementasi yang dilakukan, proses pengetesan dan integritas.

Dalam proses pengimplementasian ini, digunakan beberapa aplikasi pendukung yaitu:

a) Microsoft Visual Basic .Net 2005

(31)

25

membangun aplikasi Windows Forms, Aplikasi web berbasis ASP.NET, dan juga aplikasi command-line. Alat ini dapat diperoleh secara terpisah dari beberapa produk lainnya (seperti Microsoft Visual C++, Visual C#, atau Visual J#), atau juga dapat diperoleh secara terpadu dalam Microsoft Visual Studio .NET. Bahasa Visual Basic .NET sendiri menganut paradigma bahasa pemrograman berorientasi objek yang dapat dilihat sebagai evolusi dari Microsoft Visual Basic versi sebelumnya yang diimplementasikan di atas .NET Framework. Didalam Visual Basic .NET 2005 ini, terdapat beberapa fasilitas yaitu antara lain fasilitas untuk penanganan kesalahan yang

real time background compiler sehingga developer Visual C# dapat mengetahui

kesalahan kode secara up-to-date. b) SQL Server 2005

Microsoft SQL Server adalah sebuah sistem manajemen basis data relasional (RDBMS) produk Microsoft. Bahasa kueri utamanya adalah Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh Microsoft dan Sybase. Umumnya SQL Server digunakan di dunia bisnis yang memiliki basis data berskala kecil sampai dengan menengah, tetapi kemudian berkembang dengan digunakannya SQL Server pada basis data besar.

5. Testing dan Implementasi

(32)

merancang Test Levels yang terbagi antara target pengetesan dan objektif dari pengetesan. Pada tahap berikutnya adalah mendefinisikan Test Techniques, yaitu tentang bagaimana teknik yang digunakan termasuk dasar-dasar pengetesan berdasarkan intuisi dan pengalaman serta teknik pengetesan secara teknik coding, teknik kesalahan, teknik penggunaan, dan teknik terkait lainnya. Tahap selanjutnya adalah mendefinisikan

Test-Related Measures, yaitu ukuran-ukuran pencapaian testing yang telah dilakukan

untuk kemudian di evaluasi kembali. Tahap terakhir adalah mendefinisikan Test

Process yang berisi tentang aktivitas testing.

6. Maintenance

Tahap ini adalah tahap yang mendeskripsikan pekerjaan untuk mengoperasikan dan memelihara sistem informasi pada lingkungan pengguna termasuk implementasi akhir dan proses peninjauan kembali. Pemeliharaan sistem ini terdiri dari beberapa jenis yaitu:

a) Corrective, yaitu memperbaiki desain dan error pada program; b) Adaptive, yaitu

memodifikasi sistem untuk beradaptasi dengan perubahan lingkungan; c) Perfective, yaitu melibatkan sistem untuk menyelesaikan masalah baru atau mengambil kesempatan untuk penambahan fitur; d) Preventive, yaitu menjaga sistem dari kemungkinan masalah di masa yang akan datang.

2.6.2 Model SDLC

(33)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

Pada bab ini akan dibahas tentang analisis permasalahan, solusi permasalahan dan perancangan sistem dalam Rancang Bangun Aplikasi Cutting Stock Optimization Dengan Metode Integer Linear Programming Pada Toko Kaca Rejeki. Analisis dan hasil dari analisis tersebut juga akan dibahas lebih detil di bab ini.

3.1 Analisis Permasalahan

Analisis digunakan untuk mendefinisikan suatu permasalahan dan bagaimana cara mengatasi permasalahan tersebut. Pada langkah analisis dilakukan tahapan-tahapan untuk mengetahui permasalahan yang ada yaitu dengan observasi, sehingga dapat dilakukan suatu tindakan untuk menghasilkan solusi yang tepat untuk menyelesaikan permasalahan tersebut.

Dari hasil pengumpulan data yang dilakukan, diperoleh beberapa pengguna yang secara langsung berinteraksi dengan sistem yang sudah ada saat ini, yaitu Bagian Administrasi dan Bagian Pemotongan. Secara garis besar proses bisnis pada Toko Kaca Rejeki ini dimulai dari menerima order dan melakukan proses pemotongan. Adapun proses secara keseluruhan untuk kondisi saat ini dapat dilihat pada Gambar 3.1.

(34)

Alur Sistem Saat Ini

Bag. Pemotongan Bag. Administrasi

Pelanggan

Data Order Kaca

Mulai

Selesai

Menerima Order Kaca

Mengecek Ketersediaan

di Gudang

Menghitung Harga Ada?

Ya

Membuat Nota Lunas Nota Lunas

Membuat konfirmasi barang

habis Konfirmasi

Stok Habis Tidak

Menerima Order kaca Memberikan

Order kaca

Data Order Kaca

Melakukan Proses Pemotongan

[image:34.612.101.513.83.550.2]

Kaca

Gambar 3.1. Alir Sistem (Current System)

(35)
[image:35.612.86.523.117.506.2]

29

Tabel 3.1. Penjelasan Alir Sistem (Current System)

Proses Nama Proses Kegiatan Aktor

1 Menerima Order Kaca

Bagian administrasi menerima

daftar order kaca dari pelanggan Administrasi

2

Mengecek Ketersediaan Gudang

Mengecek ketersediaan stok kaca dengan kaca yang ada di order kaca pelanggan

Administrasi

3 Memberikan Order Kaca

Memberikan order kaca yang selesai dicek kepada bagian pemotongan

Administrasi

4 Menerima Order Kaca

Menerima order kaca dari bagian

administrasi Bagian Pemotongan

5 Melakukan Proses Pemotongan

Melakukan proses pemotongan kaca sesuai dengan order kaca pelanggan

Bagian Pemotongan

6 Menghitung Harga

Melakukan perhitungan harga

dari order pelanggan Bagian Administrasi

7 Membuat Nota Lunas

Membuat nota lunas pelanggan

Bagian Administrasi

(36)

3.2Permasalahan

Setelah diketahui detil proses-proses yang dilakukan oleh tiap pengguna, penulis melakukan analisis kebutuhan yang sesuai dengan proses-proses tersebut. Analisis kebutuhan tersebut diperlukan untuk merancang perangkat lunak yang memiliki fungsi-fungsi yang sesuai dengan kebutuhan pengguna. Analisis kebutuhan dilakukan pada setiap pengguna yang secara langsung melakukan interaksi dengan sistem. Adapun analisis kebutuhan untuk pengguna-pengguna tersebut adalah:

1. Analisis pada Alir Sistem Bagian Administrasi

Bagian administrasi memiliki peran sebagai penerima order pelanggan dan mencatatnya. Setelah order dicatat akan dilakukan pengecekan ketersediaan kaca dengan order kaca. Jika kaca tidak mencukupi maka akan dilakukan konfirmasi langsung ke pelanggan. Jika kaca mencukupi maka order kaca diberikan ke bagian pemotongan. Proses-proses tersebut semuanya dilakukan secara manual. Dari proses tersebut dibutuhkan suatu proses yang dapat membantu mempercepat proses pengecekan ketersediaan stok kaca terhadap order kaca pelanggan.

2. Analisis pada Alir Sistem Bagian Pemotongan

(37)

31

permasalahan dalam hal penggunaan waktu yang diperlukan. Proses tersebut adalah proses perhitungan pola pemotongan.

Untuk mengatasi permasalahan penggunaan waktu yang tinggi, diharapkan untuk selanjutnya dapat dilakukan peningkatan penggunaan waktu proses sehingga menjadi lebih singkat dan proses pemotongan bisa dilakukan lebih cepat.

3.3 Solusi Permasalahan

Setelah dilakukan pengumpulan data, dan kemudian mengolah data-data tersebut untuk dilakukan analisis, maka didapatkanlah suatu permasalahan yang harus diselesaikan dengan memberikan solusi terbaik yang sesuai untuk permasalahan yang ada. Dalam hal ini, solusi untuk permasalahan tersebut adalah membangun aplikasi yang dapat membantu proses menghitung pola pemotongan kaca supaya proses pemotongan bisa dilakukan secara efektif dan efisien. Solusi tersebut dikerjakan sesuai dengan tahapan pengembangan perangkat lunak yang terdiri dari:

3.3.1 Kebutuhan Perangkat Lunak (Software Requirement)

(38)

3.3.1.1. Elisitasi Kebutuhan (Requirement Elicitation)

Proses elisitasi dilakukan yaitu dengan cara wawancara dan observasi awal, namun yang dilakukan wawancara hanya kepada stakeholder yang terkait saja. Sebelum kebutuhan dapat dianalisis, kebutuhan harus dikumpulkan melalui proses elisitasi. Pada tahapan ini dilakukan penyeleksian data yang diperoleh sehingga dapat diketahui data-data yang digunakan dan yang tidak digunakan terkait dengan pengembangan perangkat lunak.

Berikut ini data yang dikumpulkan melalui proses wawancara ataupun observasi pada perusahaan. Data tersebut meliputi :

a) Data Kaca

Data kaca berisi keterangan-keterangan mulai dari ukuran standar kaca, jenis-jenis kaca, harga kaca dan stok. Kaca sendiri terbagi menjadi 2 macam, yaitu kaca lembaran dan kaca sisa pemotongan.

Tabel 3.2 Data Kaca

Jenis Kaca Ketebalan Kaca Ukuran lebar dan panjang Stok

Kaca Polos 5 mm 122 x 153 30

Kaca Riben 5 mm 122 x 153 35

Kaca Cermin 5 mm 122 x 153 20

Kaca Polos 8 mm 214 x 305 15

(39)

33

b) Data order kaca

Data order kaca digunakan untuk menginformasikan ukuran, jenis, dan jumlah kaca yang dibeli oleh pelanggan.

Tabel 3.3 Data Order Kaca

Jenis kaca Ketebalan Kaca Ukuran lebar dan panjang Jumlah pembelian

Kaca Polos 5 mm 50 x 30 100

Kaca Riben 5 mm 100 x 50 70

Kaca Cermin 5 mm 90 x 45 50

Kaca Polos 8 mm 50 x 50 80

Kaca Riben 3 mm 40 x 50 30

c) Data Pegawai

Data pegawai digunakan untuk membagi hak akses dalam penggunaan aplikasi perangkat lunak yang akan dibangun

Tabel 3.4 Data Pegawai

Kode Pegawai Nama Pegawai Jabatan

Rj1 Rika Bagian Administrasi 1

(40)

3.3.1.2Analisis Kebutuhan Administrasi

Setelah dilakukan analisis pada tahap yang sebelumnya, maka bagian administrasi membutuhkan sebuah sistem yang dapat menunjukkan ketersediaan stok yang ada di gudang. Data yang dibutuhkan oleh bagian administrasi adalah data kaca.

3.3.1.3Analisis Kebutuhan Pemotongan

Setelah dilakukan analisis pada tahap sebelumnya, maka bagian pemotongan dan administrasi membutuhkan suatu aplikasi yang dapat membantu meningkatkan keefektifan dan keefisienan dalam proses pemotongan. Adapun peningkatan tersebut maka dilakukan proses sebagai berikut :

a. Bagian pemotongan dapat memotong kaca sesuai dengan pola yang telah dihitung menggunakan cutting stock optimization.

b. Bagian pemotongan tidak perlu menghitung pola secara manual.

Dengan adanya perubahan tersebut, maka proses kedepannya akan mengalami peningkatan pemanfaatan informasi yang lebih cepat. Data – data yang dibutuhkan oleh bagian pemotongan adalah data order kaca dan data kaca.

3.3.1.4Spesifikasi Kebutuhan (Requirement Spesification)

(41)

35

apa yang dibutuhkan oleh penggunanya. Adapun kebutuhan fungsi-fungsi tersebut dapat dikelompokkan menjadi kebutuhan fungsional dan kebutuhan non-fungsional.

a. Kebutuhan Fungsional

Kebutuhan fungsional merupakan dasar dari penyusunan fungsi-fungsi yang akan dibangun didalam perangkat lunak. Fungsi-fungsi perangkat lunak tersebut telah melewati proses identifikasi kebutuhan setiap pengguna. Adapun kebutuhan fungsional tersebut yaitu:

1. Bagian Administrasi

Kebutuhan fungsional yang diperlukan untuk mendukung proses bagian administrasi terdiri dari 2 fungsi yaitu mencatat order pelangggan dan membuat purchase order.

2. Bagian Pemotongan

(42)
[image:42.612.76.538.181.634.2]

Tabel 3.5 Kebutuhan Fungsional Pengguna.

Pengguna Kebutuhan Fungsional

Bagian Administrasi Mencatat Order Pelanggan Mengacu pada Lampiran 2

Membuat Purchase Order Mengacu pada Lampiran 2

Bagian Pemotongan Menghitung Pola Pemotongan Mengacu pada Lampiran 2

Membuat Laporan Hasil Pemotongan Mengacu pada Lampiran 2

b. Kebutuhan Non-Fungsional

Dalam penerapan fungsi-fungsi tersebut dengan tujuan mendukung kinerja fungsi utama dari sistem, berikut ini adalah peran dari non-fungsional yang mendukung kinerja fungsi-fungsi utama yang ditunjukkan pada Tabel 3.6.

Tabel 3.6 Keterkaitan Fungsional dan Non-Fungsional Sistem

No Aktor Fungsional Sistem Non-Fungsional Sistem

1. Bagian

Administrasi a) Mencatat Order Pelanggan b) Membuat Purchase Order

a) Security

b) Operability

c) Time Behaviour

d) Accuracy

e) Maintain Ability

2. Bagian Pemotongan

a) Menghitung Pola Pemotongan

b) Membuat Laporan Hasil Pemotongan

a) Security

b) Operability

c) Time Behaviour

(43)

37

3.3.2 Desain Sistem (Software Design)

Rancangan perangkat lunak merupakan suatu kegiatan dalam merancang atau mendesain perangkat lunak yang akan dibangun sesuai dengan kebutuhan pengguna. Dikatakan sesuai dengan kebutuhan pengguna karena proses desain tersebut dilakukan berdasarkan hasil analisis kebutuhan yang telah dilakukan sebelumnya. Adapun rancangan perangkat lunak tersebut berupa rancangan alur sistem (System Flow), Context Diagram, Data Flow

Diagram, dan rancangan tampilan antar muka (Design Interface).

3.3.2.1 Alur Sistem (System Flow)

Sesuai dengan hasil analisis kebutuhan, telah didefinisikan bahwa pengguna yang menggunakan sistem secara langsung berjumlah 2 (dua) pengguna yaitu Bagian Administrasi dan Bagian Pemotongan. Berikut merupakan alur sistem masing-masing pengguna yang baru.

a. Alur Sistem Bagian Administrasi

(44)

Sysflow Mencatat Order Pelanggan Bagian Administrasi Pelanggan Data Order Pelanggan Data order Mulai Menyimpan Order Pelanggan Tabel Order Pelanggan Mencetak Bukti Order Pelanggan Otentifikasi Login Tabel Pengguna Tabel Pegawai Tabel Stok Kaca Mengecek Ketersediaan

Kaca Tabel Stok

Sisa Kaca Ada? Ya Menyimpan Purchase Order? Tidak Tabel Purchase Order Menyimpan Data Purchase Order Ya Tidak Sesuai? Selesai Bukti Order Pelanggan Data User Ya Tidak

[image:44.612.95.518.89.635.2]
(45)

39

Penjelasan Alur Sistem Mencatat Order Pelanggan sesuai Gambar 3.2 dapat dilihat pada Tabel 3.7.

Tabel 3.7 Penjelasan Alur Sistem Mencatat Order Pemotongan Phase No.

Proses

Nama Proses Input Uraian Proses Output

1 1 Input Data User

Data User Menginputkan data user berupa Id_Pegawai dan Password

Data User

2 Otentifikasi

Login Data User, Data Pegawai (Diambil dari Tabel) Bagian Administrasi melakukan proses login

sesuai dengan jabatan

Halaman Menu Utama

3 Input Data

Order Data Order Pelanggan (Diambil dari dokumen) Bagian Administrasi menerima data order dari pelanggan dan

menginputkan ke sistem.

Inputan data order

pelanggan

4 Mengecek Ketersediaan Kaca Inputan data order pelanggan Sistem menngecek ketersediaan jumlah order kaca dengan stok kaca

Data stok kaca

5 Menyimpan Data Purchase Order Data order pelanggan Menyimpan Data Purchase Order Data Purchase Order

6 Menyimpan Order Pelanggan

Data order pelanggan

Sistem menyimpan data order pelanggan ke tabel order pelanggan

Data order pelanggan tersimpan 7 Mencetak

Bukti Order pelanggan

Data order pelanggan

Sistem mencetak bukti order pelanggan dan diberikan kembali ke pelanggan sebagai bukti

(46)

Sysflow Membuat Purchase Order

Supplier Bagian Administrasi

Mulai

Menampilkan Data Purchase

Order

Purchase Order

Mencetak Purchase Order

Purchase Order Tabel

Purchase Order

Nota Kaca Data Kaca Baru

Ya

Tidak Data User

Tabel Pegawai

Sesuai? Otentifikasi

Login Tabel

Pengguna

Tabel Stok Kaca Mengupdate

Stok Kaca

Selesai

[image:46.612.88.508.84.633.2]
(47)

41

Penjelasan Alur Sistem Membuat Purchase Order sesuai Gambar 3.3 dapat dilihat pada Tabel 3.8.

Tabel 3.8 Penjelasan Alur Sistem Membuat Purchase Order Phase No.

Proses

Nama Proses Input Uraian Proses Output

1 1 Input Data User

Data User Menginputkan data user berupa

Id_Pegawai dan Password

Data User

2 Otentifikasi

Login Data User, Data Pegawai (Diambil dari Tabel) Bagian Administrasi melakukan proses

login sesuai dengan

jabatan

Halaman Menu Utama

3 Menampilkan Data Purchase Order Data Stok Kaca, Data Purchase Order (Diambil dari tabel) Sistem mengambil data dari tabel stok kaca dan tabel

purchase order,

kemudian menampilkannnya ke layar Display data Purchase Order

4 Mencetak

Purchase Order Data Purchase Order Update Sistem mencetak purchase order Purchase Order

5 Menginputkan Data Kaca Baru

Nota Kaca Menginputkan Data Kaca yang telah selesai disorder

Data Kaca Diorder

6 Mengupdate Stok Kaca

Stok Kaca Diorder

Mengupdate data stok kaca sesuai dengan jumlah yang telah disorder

(48)

b. Alur Sistem Pemotongan

Berikut ini adalah rancangan alur sistem untuk Pimpinan yang ditunjukkan pada Gambar 3.4.

Sysflow Menghitung Pola Pemotongan

Bagian Pemotongan Mulai Menampilkan Data Order Pelanggan Tabel Order Pelanggan Menghitung Pola Pemotongan Kaca Visualisasi Pola Pemotongan Mengupdate Stok Kaca Tabel Stok Kaca Menghitung Dengan Metode Integer Linear Programming Tabel Hasil Pemotongan Menyimpan Data Hasil Pemotongan Data Order Pelanggan Ya Tidak Sesuai? Data User Tabel Pegawai Tabel Pengguna Otentifikasi Login Menyimpan Stok Sisa Kaca

Tabel Stok Sisa Kaca

Selesai

[image:48.612.99.510.182.644.2]
(49)

43

Penjelasan alur sistem sesuai dengan Gambar 3.4 dapat dilihat pada Tabel 3.9. Tabel 3.9 Penjelasan Alur Sistem Menghitung Pola Pemotongan Phase No.

Proses

Nama Proses Input Uraian Proses Output

1 1 Input Data User

Data User Menginputkan data user berupa

Id_Pegawai dan Password

Data User

2 Otentifikasi

Login Data User, Data Pegawai (Diambil dari Tabel) Bagian Administrasi melakukan proses

login sesuai dengan

jabatan

Halaman Menu Utama

3 Menampilkan Data Order Pelanggan Data order pelanggan (Diambil dari tabel) Sistem menampilkan data order pelanggan dari tabel order pelanggan dan menampilkannya ke layar

Display data

order pelanggan

4 Menghitung Pola

Pemotongan Kaca

Display data

order pelanggan Sistem menghitung kebutuhan pola pemotongan Data Pemotongan

5 Menghitung Dengan Metode Integer Linear Programming Data Pemotongan Sistem menghitung pola pemotongan dengan metode integer linear programming Visualisasi Pola Pemotongan

6 Menyimpan Data Hasil Pemotongan

Data Pola Pemotongan

Sistem menyimpan hasil pemotongan ke dalam tabel hasil pemotongan

Data Hasil Pemotongan

7 Mengupdate Stok Kaca

Data Stok Hasil

Pemotongan

Sistem mengupdate jumlah stok kaca sesuai yang dipakai

(50)

dalam proses pemotongan 8 Menyimpan

Stok Sisa Kaca

Data Stok Hasil

Pemotongan

Sistem menympan jumlah stok sisa kaca dalam proses

pemotongan

Data Stok Sisa Kaca

(51)

45

Sysflow Membuat Laporan Hasil Pemotongan

Pemilik Usaha Bagian Pemotogan Mulai Menampilkan Laporan Hasil Pemotongan Tabel Hasil Pemotongan Laporan Hasil Pemotongan Mencetak Laporan Hasil Pemotongan Permintaan Laporan Permintaan Laporan Laporan Hasil Pemotongan Tabel Order Pelanggan Menampilkan Laporan Pelanggan Prioritas Laporan Pelanggan Prioritas Laporan Pelanggan Prioritas Mencetak Laporan Pelanggan Prioritas Laporan Hasil Pemotongan? Mengecek Data Permintaan Laporan Laporan Pelanggan Prioritas? Laporan Kaca Terlaris? Menampilkan Laporan Kaca Terlaris Tabel Order Pelanggan Mencetak Laporan Kaca Terlaris Laporan Laporan Kaca

Terlaris Laporan Kaca

Terlaris Laporan Perbandingan Hasil Pemotongan? Tabel Hasil Pemotongan Menampilkan Laporan Perbandingan Hasil Pemotongan Laporan Perbandingan Hasil Pemotongan Mencetak Laporan Perbandingan Hasil Pemotongan Laporan Perbandingan Hasil Pemotongan A D C B

A B C

D Ya Tidak Ya Tidak Ya Tidak Ya Tidak E Ya

Tidak Otentifikasi Login

Sesuai? Data User Tabel Pengguna Tabel Pegawai E Selesai

Gambar 3.5 Sysflow Membuat Laporan Hasil Pemotongan

[image:51.612.88.525.88.551.2]
(52)

Tabel 3.10 Penjelasan Alur Sistem Membuat Laporan Hasil Pemotongan.

Phase No. Proses

Nama Proses Input Uraian Proses Output

1 1 Input Data User

Data User Menginputkan data user berupa

Id_Pegawai dan Password

Data User

2 Otentifikasi

Login Data User, Data Pegawai (Diambil dari Tabel) Bagian Administrasi melakukan proses

login sesuai dengan

jabatan

Halaman Menu Utama

3 Menginputkan Permintaan Laporan Dokumen permintaan laporan Permintaan laporan diinputkan kedalam sistem Data Permintaan Laporan 4 Mengecek

Data Permintaan Laporan Data Permintaan Laporan Sistem mengecek laporan apa yang akan ditampilkan

Data Permintaan Laporan

5 Menampilkan Laporan Hasil Pemotongan Data Permintaan Laporan, Data Hasil Pemotongan Sistem mengambil data pemotongan dari tabel hasil pemotongan dan menampilkannya ke layar Display Laporan Hasil Pemotongan

6 Mencetak Laporan Hasil Pemotongan Display Laporan Hasil pemotongan Sistem mencetak laporan hasil pemotongan untuk dicetak Laporan Hasil Pemotongan

(53)

47

layar 8 Mencetak

Laporan Pelanggan Prioritas Display Laporan Pelanggan Prioritas Sistem mencetak laporan pelanggan prioritas untuk dicetak Laporan Pelanggan Prioritas

9 Menampilkan Laporan Kaca Terlaris Data Permintaan Laporan, Data Jenis Kaca Sistem mengambil data jenis kaca yang paling banyak diorder dari tabel order pelanggan dan menampilkannya ke layar

Display Laporan Kaca Terlaris

10 Mencetak Laporan Kaca Terlaris Display Laporan Kaca Terlaris Sistem mencetak laporan kaca terlaris untuk dicetak

Laporan Kaca Terlaris

11 Menampilkan Laporan Perbandingan Hasil Pemotongan Data Permintaan Laporan, Data Perbandingan Hasil Pemotongan Sistem mengambil data perbandingan hasil pemotongan dari tabel hasil pemotongan dan menampilkannya ke layar Display Laporan Perbandingan Hasil Pemotongan

12 Mencetak Laporan Perbandingan Hasil Pemotongan Display Laporan Perbandingan Hasil Pemotongan Sistem mencetak laporan perbandingan hasil pemotongan untuk dicetak Laporan Perbandingan Hasil Pemotongan

3.3.2.2 Context Diagram

(54)

Purchase Order

Nota Kaca

Laporan Perbandingan Hasil Pemotongan Laporan Kaca Terlaris

Laporan Pelanggan Prioritas Laporan Hasil Pemotongan Permintaan Laporan

Bukti Order Pelanggan Data Order Pelanggan

0 Aplikasi Cutting Stock Optimization + Bagian Administrasi Bagian Pemotongan

Gambar 3.6 Context Diagram

3.3.2.3 Diagram Berjenjang

Diagram Berjenjang merupakan diagram yang menggambarkan pembagian fungsi-fungsi dari sistem menjadi sub sistem yang lebih kecil. Diagram Berjenjang untuk aplikasi yang dikembangkan dapat dilihat pada Gambar 3.7.

0

Aplikasi Cutting Stock Optimization Dengan Metode Integer Linear Progamming

2 Membuat Purchase Order 3 Menghitung Pola Pemotongan 1 Mencatat Order Pelanggan 4 Membuat Laporan Hasil Pemotongan 4.2 Mengecek Data Permintaan Laporan 4.3 Menampilkan Laporan Hasil Pemotongan 4.1 Menginputkan Permintaan Laporan 4.4 Mencetak Laporan Hasil Pemotongan 1.1 Menginputkan Data Order 1.2 Mengecek Ketersediaan Kaca 1.3 Membuat Purchase Order 1.4 Menyimpan Order Pelanggan 1.5 Mencetak Bukti Order Pelanggan 2.1 Menampilkan Data Purchase Order 2.2 Mencetak Data Purchase Order 2.3 Menginputkan Data Kaca Baru 2.4 Mengupdate Stok Kaca 3.1 Menampilkan Data Order 3.2 Menghitung Pola Pemotongan Kaca 3.3 Menghitung Dengan Metode Integer Linear Programming 3.4 Menimpan Data Hasil Pemotongan 3.5 Mengupdate Stok Kaca 3.6 Menyimpan Stok Sisa Kaca 4.5 Menampilkan Laporan Pelanggan Prioritas 4.6 Mencetak Laporan Pelanggan Prioritas 4.7 Menampilkan Laporan Kaca Terlaris 4.8 Mencetak Laporan Kaca Terlaris 4.9 Menampilkan Laporan Perbandingan Hasil Pemotogan 4.10 Mencetak Laporan Perbandingan Hasil Pemotongan

(55)

49

3.3.2.4 Data Flow Diagram

Data Flow Diagram (DFD) untuk aplikasi yang sedang dikembangkan telah

didefinisikan menjadi sub sistem Level 0 yang terdiri dari:

a) Data Flow Diagram Level 0

Pada Level 0 terlihat pada Gambar 3.8, aliran data yang masuk ke sistem, proses-proses yang dilakukan, dan tabel yang dibutuhkan berasal dari Bagian Administrasi dan Bagian Pemotongan.

[Nota Kaca] [Purchase Order]

Data Perbandingan Hasil Pemotongan Data Jenis KacaData Pelanggan

[Laporan Kaca T erlaris] [Laporan Perbandingan Hasil Pemotongan]

[Laporan Pelanggan Prioritas]

Data Update Stok Kaca Data Purchase Order

Data Stok Kaca Data Stok Sisa Kaca

Data Purchase Order

Data Hasil Pemotongan Data Stok Sisa Kaca Data Stok Kaca

Data Hasil Pemotongan

Data Order Pelanggan Data order pelanggan

[Permintaan Laporan] [Laporan Hasil Pemotongan]

[Bukti Order Pelanggan] [Data Order Pelanggan] Bagian Administrasi Bagian Pemotongan 1 Mencatat Order Pelanggan+ 2 Membuat Purchase Order + 3 Menghitung Pola Pemotongan+ 4 Membuat Laporan Hasil Pemotongan +

3 T abel Order Pelanggan

4 T abel Purchase Order

5 T abel Hasil Pemotongan 1 T abel Stok Kaca

2 T abel Stok Sisa Kaca

1 T abel Stok Kaca 2 T abel Stok Sisa

Kaca

3 T abel Order Pelanggan

(56)

b) Data Flow Diagram Level 1 Mencatat Order Pelanggan.

Untuk Level 1 Mencatat Order Pelanggan, sistem menerima masukan data dari Bagian Administrasi berupa data order kaca yang akan disimpan didalam database. DFD

Level 1 Mencatat Order Pelanggan dapat dilihat pada Gambar 3.9.

Data Purchase Order Data stok kaca Inputan data order

[Data Purchase Order]

[Data Stok Sisa Kaca] [Data Stok Kaca]

Data order pelanggan

[Data order pelanggan]

[Bukti Order Pelanggan]

[Data Order Pelanggan] Bagian

Administrasi

3 Tabel Order

Pelanggan 1.1

Menginputkan Data Order

1.4 Menyimpan

Order Pelanggan

1.5 Mencetak Bukti Order

Pelanggan

2 Tabel Stok

Sisa Kaca

1 Tabel Stok Kaca

4 Tabel Purchase Order

1.2 Mengecek Ketersediaan

Kaca

1.3 Membuat Purchase Order

Gambar 3.9 DFD Level 1 Mencatat Order Pelanggan

c) Data Flow Diagram Level 1 Membuat Purchase Order.

(57)

51

ditampilkan kemudian dapat dicetak menjadi purchase order. DFD Level 1 Membuat

Purchase Order dapat dilihat pada Gambar 3.10.

[Nota Kaca] [Purchase Order] Display Data Purchase Order

[Data Purchase Order]

Data Stok Kaca Diorder

[Data Update Stok Kaca]

4 Tabel Purchase Order

2.1 Menampilkan Data Purchase

Order

2.3 Menginputkan

Data Kaca Baru

2.4 Mengupdate

Stok Kaca

1 Tabel Stok Kaca 2.2

Mencetak Data Purchase

Order

Bagian Administrasi

Gambar 3.10 DFD Level 1 Membuat Purchase Order

d) Data Flow Diagram Level 1 Menghitung Pola Pemotongan.

(58)

Visualisasi pola pemotongan Data Pemotongan

Data Stok Hasil Pemotongan Data Stok Hasil Pemotongan Display data order pelanggan

[Data Stok Sisa Kaca] [Data Stok Kaca]

[Data Hasil Pemotongan] [Data Order Pelanggan]

3 Tabel Order

Pelanggan

5 Tabel Hasil Pemotongan

1 Tabel Stok Kaca

2 Tabel Stok Sisa Kaca

3.1

Menampilkan Data Order

3.2 Menghitung

Pola Pemotongan

Kaca

3.4

Menyimpan Data Hasil Pemotongan

3.5

Mengupdate Stok Kaca

3.6

Menyimpan Stok Sisa Kaca

3.3 Menghitung Dengan Metode

Integer Linear Programming

(59)

53

e) Data Flow Diagram Level 1 Membuat Laporan Hasil Pemotongan.

(60)

Display Laporan Perbandingan Hasil Pemotongan Data Permintaan Laporan

Display Laporan Kaca T erlaris Data Permintaan Laporan Display Laporan Pelanggan Prioritas

Data Permintaan Laporan Display Laporan Hasil Pemotongan

Data Permintaan Laporan Data Permintaan Laporan

[Data Perbandingan Hasil Pemotongan]

[Laporan Perbandingan Hasil Pemotongan] [Laporan Kaca T erlaris]

[Data Jenis Kaca] [Laporan Pelanggan Prioritas]

[Data Pelanggan] [Laporan Hasil Pemotongan]

[Data Hasil Pemotongan] [Permintaan Laporan]

Bagian Pemotongan

5 T abel Hasil Pemotongan 4.1 Menginputkan Permintaan Laporan 4.3 Menampilkan Laporan Hasil Pemotongan

3 T abel Order Pelanggan

3 T abel Order Pelanggan

5 T abel Hasil Pemotongan 4.2 Mengecek Data Permintaan Laporan 4.4 Mencetak Laporan Hasil Pemotongan 4.5 Menampilkan Laporan Pelanggan Prioritas 4.6 Mencetak Laporan Pelanggan Prioritas 4.7 Menampilkan Laporan Kaca T erlaris 4.8 Mencetak Laporan Kaca T erlaris 4.9 Menampilkan Laporan Perbandingan Hasil Pemotongan 4.10 Mencetak Laporan Perbandingan Hasil Pemotongan

(61)

55

3.3.2.5 Entity Relationship Diagram

Entity Relationship Diagram (ERD) adalah suatu desain sistem yang digunakan untuk

merepresentasikan, menentukan, dan mendokumentasikan kebutuhan sistem kedalam suatu bentuk dengan tujuan untuk menunjukkan struktur keseluruhan dari data pemakai. Dalam perancangan aplikasi ini, telah terbentuk ERD yang merupakan lanjutan dari pembuatan desain dengan menggunakan DFD, yang disimbolkan dengan menggunakan simbol entity. Adapun entity tersebut adalah:

a) Bagian Administrasi

b) Bagian Pemotongan

3.3.2.6 Conceptual Data Model

Conceptual Data Model merupakan gambaran secara keseluruhan tentang konsep

struktur basis data yang dirancang untuk program atau aplikasi. Pada CDM belum tergambar jelas bentuk tabel-tabel penyusun basis data beserta field yang terdapat pada setiap tabel. Adapun CDM yang dirancang untuk Rancang Bangun Aplikasi Cutting Stock

(62)

Mempunyai Melakukan Melakukan Melakukan Mempunyai Memiliki Mempunyai Mempunyai Memiliki Memiliki Stok_Kaca Tinggi Lebar Stok Master_Kaca Id_Kaca Nama_Kaca Harga_Beli Harga_Lembaran Harga_Potongan

Stok Sisa Kaca Tinggi Lebar Stok Order_Pelanggan Id_Order Tinggi Lebar Jumlah Nama_Pelanggan Tanggal Status Purchase_Order Id_Po Tinggi Lebar Jumlah Tanggal Hasil_Pemotongan Ukuran Jumlah_Kaca_Terpakai Sisa_Kaca_1 Sisa_Kaca_2 Pegawai id_Pegawai Nama_Pegawai Jabatan Pengguna Password

Gambar 3.13 Conceptual Data Model

3.3.2.7 Physical Data Model

Physical Data Model (PDM) menggambarkan secara detil konsep rancangan struktur

basis data untuk suatu program atau aplikasi. PDM terbentuk dari Conceptual Data Model

(63)

57

ID_ORDER = ID_ORDER

ID_PEGAWAI = ID_PEGAWAI

ID_PEGAWAI = ID_PEGAWAI

ID_PEGAWAI = ID_PEGAWAI

ID_PEGAWAI = ID_PEGAWAI

ID_KACA = ID_ORDER ID_KACA = ID_KACA

ID_KACA = ID_KACA

ID_KACA = ID_KACA

ID_KACA = ID_KACA

STOK_KACA ID_KACA varchar(30) PANJANG integer LEBAR integer STOK integer MASTER_KACA ID_KACA varchar(30) NAMA_KACA varchar(30) HARGA_BELI integer HARGA_LEMBARAN integer HARGA_POTONGAN integer STOK_SISA_KACA ID_KACA varchar(30) PANJANG integer LEBAR integer STOK integer ORDER_PELANGGAN ID_ORDER varchar(20) ID_KACA varchar(30) ID_PEGAWAI varchar(20) PANJANG integer LEBAR integer JUMLAH integer NAMA_PELANGGAN varchar(20) TANGGAL timestamp STATUS varchar(20) PURCHASE_ORDER ID_PO varchar(20) ID_KACA varchar(30) ID_PEGAWAI varchar(20) PANJANG integer LEBAR integer JUMLAH integer TANGGAL timestamp HASIL_PEMOTONGAN ID_ORDER varchar(20) ID_PEGAWAI varchar(20) UKURAN1 varchar(20) JUMLAH_KACA_TERPAKAI integer SISA_KACA_1 integer SISA_KACA_2 integer PEGAWAI ID_PEGAWAI varchar(20) NAMA_PEGAWAI varchar(30) JABATAN varchar(20) PENGGUNA ID_PEGAWAI varchar(20) PASSWORD varchar(20)

Gambar 3.14 Physical Data Model

3.3.2.8 Struktur Basis Data

Sesuai dengan PDM yang telah terbentuk, dapat dibentuk suatu struktur basis data yang akan digunakan untuk penyimpanan data yaitu:

1. Master Kaca

Primary Key : Id_Kaca

(64)

Fungsi : Untuk menyimpan data master dari kaca

Tabel 3.11 Master Kaca.

No. Nama Field Constraint Tipe Size Deskripsi 1 Id_Kaca PK Varchar 30 Kode Kaca

2 Nama_Kaca Varchar 30 Nama Kaca

3 Harga_Beli Integer Harga Beli Kaca

4 Harga_Lembaran Integer Harga Lembaran 5 Harga_Potongan Integer Harga_Potongan

2. Tabel Stok Kaca

Primary Key : Id_Kaca, Panjang, Lebar

Foreign Key : Id_Kaca

Fungsi : Untuk menyimpan stok kaca

Tabel 3.12 Stok Kaca.

No. Nama Field Constraint Tipe Size Deskripsi 1 Id_Kaca PK, FK Varchar 30 Kode Kaca

2 Panjang PK Integer Panjang Kaca

3 Lebar PK Integer Lebar Kaca

(65)

59

3. Tabel Stok Sisa Kaca

Primary Key : Id_Kaca, Panjang, Lebar

Foreign Key : Id_Kaca

Fungsi : Untuk menyimpan stok kaca sisa

Tabel 3.13 Stok Sisa Kaca.

No. Nama Field Constraint Tipe Size Deskripsi 1 Id_Kaca PK, FK Varchar 30 Kode Kaca

2 Panjang PK Integer Panjang Kaca

3 Lebar PK Integer Lebar Kaca

4 Stok Integer Jumlah Stok

4. Tabel Order Pelanggan

Primary Key : Id_Order

Foreign Key : Id_Kaca

[image:65.612.100.512.264.514.2]

Fungsi : Untuk menyimpan order dari pelanggan

Tabel 3.14 Order Pelanggan.

No. Nama Field Constraint Tipe Size Deskripsi 1 Id_Order PK Varchar 20 Kode Purchase

(66)

2 Id_Kaca FK Varchar 30 Kode Kaca

3 Panjang Integer Panjang Kaca

4 Lebar Integer Lebar Kaca

5 Tanggal Datetime Tanggal

6 Jumlah Integer Jumlah Kaca

7 Status Varchar 20 Status Order

6. Tabel Purchase Order

Primary Key : Id_Penerimaan_K

Foreign Key : Id_Kaca

[image:66.612.102.510.265.625.2]

Fungsi : Untuk menyimpan transaksi penerimaan kaca

Tabel 3.15 Purchase Order.

No. Nama Field Constraint Tipe Size Deskripsi 1 Id_Po PK Varchar 20 Kode Purchase

Order 2 Id_Kaca FK Varchar 30 Kode Kaca

3 Panjang Integer Panjang Kaca

4 Lebar Integer Lebar Kaca

5 Tanggal Datetime Tanggal

(67)

61

7. Tabel Hasil Pemotongan

Primary Key : Id_Pemotongan

Foreign Key : Id_Kaca

[image:67.612.105.515.264.507.2]

Fungsi : Untuk menyimpan transaksi penerimaan kaca

Tabel 3.16 Hasil Pemotongan.

No. Nama Field Constraint Tipe Size Deskripsi 1 Id_Pemotongan PK Varchar 20 Kode Pemotongan 2 Id_Kaca FK Varchar 30 Kode Kaca

3 Ukuran Varchar 20 Ukuran kaca yang

dipotong

4 Jumlah Integer Lebar Kaca

5 Jumlah_Kaca_Terp akai

Integer Jumlah kaca yang dipakai dalam proses pemotongan 6 Jumlah_Sisa_Kaca Integer Jumlah sisa kaca

hasil pemotongan

8. Tabel Pegawai

Primary Key : Id_Pegawai

Foreign Key : -

(68)

Tabel 3.17 Pegawai.

No. Nama Field Constraint Tipe Size Deskripsi 1 Id_Pegawai PK Varchar 20 Kode Pegawai 2 Nama_Pegawai Varchar 30 Nama Pegawai 3 Jabatan Varchar 20 Jabatan Pegawai

3.3.2.9 Perancangan Prosedur dan Program Unit

Detil sistem merupakan penjabaran pemrograman aplikasi dengan menggunakan

pseudocode sehingga konstruksi awal pemrograman aplikasi yang akan dibangun dapat

terlihat serta memberikan deskripsi dari setiap fungsi yang akan dibangun disertai dengan desain tampilan antarmuka aplikasi. Pada Tugas Akhir ini, penjabaran detil dari sistem akan dibagi berdasarkan pengguna aplikasi tersebut sesuai dengan yang telah dijelaskan sebelumnya.

a) Form Login

Menampilkan menu untuk masuk ke aplikasi, seperti terlihat pada Tabel 3.21. Tabel 3.18 Detil FormLogin

Descriptions

Form Login merupakan form yang akan tampil pertama kali saat pengguna akan menggunakan aplikasi. Form Login ini akan selalu menjadi tampilan awal di setiap pengguna.

Table Input Tabel login

(69)

63

[image:69.612.93.535.81.669.2]

Interface

Gambar 3.15 Desain Form Login

Functional -

Non-Functional Security

Query Select Select username, pass_word from login

Pseudocode

Begin Declare

Koneksi() Login() End

Tabel 3.19 Detil Form Mencatat Order Pelanggan NamaFungsi Mencatat Order Pelanggan

Stakeholder Bagian Administrasi

Deskripsi Mencatat order pemotongan dari pelanggan Desain Interface

(70)

Table Input Tabel Pengguna, Tabel Pegawai Table Output Tabel Order Pelanggan

Query Insert into tabel_order_pelanggan () <

Gambar

Gambar 3.1. Alir Sistem (Current System)
Tabel 3.1. Penjelasan Alir Sistem (Current System)
Tabel 3.5 Kebutuhan Fungsional Pengguna.
Tabel Pengguna
+7

Referensi

Dokumen terkait