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
TOKO KACA REJEKI
TUGAS AKHIR
Diajukan sebagai salah satu syarat untuk menyelesaikan Program Sarjana Komputer
Oleh:
SEKOLAH TINGGI
MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA
2014
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
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
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
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
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
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
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
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
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.
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)
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 )
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 :
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.
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
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.
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
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.
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
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
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
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
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.
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
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.
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
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
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
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
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
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
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.
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)
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
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
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)
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
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
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)
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
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
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
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]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
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]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
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]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
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
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]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
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
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
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
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.
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.
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
53
e) Data Flow Diagram Level 1 Membuat Laporan Hasil Pemotongan.
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
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
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
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
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
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
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
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 : -
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
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
Table Input Tabel Pengguna, Tabel Pegawai Table Output Tabel Order Pelanggan
Query Insert into tabel_order_pelanggan () <