• Tidak ada hasil yang ditemukan

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem

Persoalan aliran pipa air merupakan salah satu permasalahan optimasi. Graf yang digunakan adalah suatu graf berbobot jarak antar user yang merupakan tempat-tempat yang akan di lintasi. Untuk meminimumkan waktu atau biaya dalam melintasi tempat- tempat, diperlukan informasi dari setiap maximum aliran yang harus dilalui. Permasalahan pencarian aliran maximum yang dialiri setiap pipa yang dapat diselesaikan dengan algoritma Maximum-flow yang bekerja sebagai pencarian arus

maximum dari setiap aliran air pada setiap pipa, untuk selanjutnya dapat diterapkan pada pencarian arus maximum pada setiap pipa yang ingin diketahui. Contoh kasus yang akan diambil adalah pencarian arus maximum antara titik A dan titik D.

0 1 2 3 4 5 1 2 3 4 5 A B C D 2,5 5,4 4,1 1,2

Dilihat pada gamabar 3.1 merupakan koordinat pengguna yang digunakan sebagai banyak aliran air pada setiap pipa yang dialirikan kemudian sistem ini akan mencari aliran

maximum menggunakan algoritma maximum-flow.

3.1.1 Analisis Masalah

Untuk mengidentifikasi masalah menggunakan diagram Ishikawa (fishbone diagram). Masalah yang akan di identifikasi yaitu bahasa pemerograman Java belum digunakan secara maksimal., sehingga waktu yang digunakan akan jauh lebih efektif dari pada perhitungan secara manual. Permasalahan tersebut dapat diperlihatkan pada gambar 3.2. melalui sebuah diagram Ishikawa.

Kapasitas air flow

Mencari aliran maximum pada aliran Pipa air

Material

User

Metode

Machine

Memaximumkan jumlah aliran yang bisa di aliri dari sumber(source) ke tujuan(sink)

Bahasa Java Aliran pipa air

Maximum-flow

Matlab

C++

Gambar 3.2 Diagram Ishikawa Untuk Analisis Permasalahan Sistem

Analisis Kebutuhan Sistem meliputi analisis kebutuhan fungsional sistem dan analisis kebutuhan non-fungsional sistem.

3.1.2.1Kebutuhan Fungsional Sistem

Kebutuhan fungsional yang harus dimiliki oleh sistem. Dalam sistem penerapan pada aliran pipa air S-1 Ilmu Komputer USU yaitu dengan menggunakan aloritma Maximum- flow. Ini terdapat beberapa hal yang menjadi syarat fungsional yang harus dipenuhi, antara lain :

1. Sistem akan mencari kapasitas maximum yang dialiri air.

2. Mencari aliran maximum pada setiap aliran menggunakan alagoritma

Maximum-flow .

3. Sistem dapat mengetahui setiap aliran maximum yang akan dialiri setiap aliran air.

3.1.2.2Kebutuhan Non-Fungsional Sistem

Persyaratan non-fungsional adalah persyaratan apa yang dilakukan sistem, beberapa persyaratan fungisonal yang haru dipenuhi oleh sistem yang dirancang adalah sebagai berikut :

a. Performa

Sistem yang akan dibangun harus mampu memberi dan mengetahui hasil dari proses pada setiap aliran air yang dialiri.

Sistem harus mampu menyediakan informasi tentang data-data yang akan digunakan pada sistem.

c. Mudah dipelajari dan digunakan

Sistem yang akan dibangun harus sederhana dan mudah dipelajari oleh pengguna (user).

d. Kontrol

Sistem yang telah dibangun harus tetap dikontrol setelah selesai dirancang agar fungsi dan kinerja sistem tetap terjaga dan dapat memberikan hasil yang sesuai dengan keinginan pengguna.

e. Efisiensi

Sistem harus dirancang sesederhana mungkin agar memudahkan pengguna dalam menggunakan atau menjalankan aplikasi tersebut.

f. Pelayanan

Sistem yang telah dirancang bisa dikembangkan ke tingkat yang lebih kompleks lagi bagi pihak-pihak yang ingin mengembangkan sistem tersebut.

3.1.3 Pemodelan

Pemodelan aplikasi yang dirancang bertujuan untuk menggambarkan semua kondisi dan bagian-bagian yang berperan dalam sistem yang dirancang. Pemodelan aplikasi dilakukan dengan membuat use-case diagram, activity diagram, dan sequence diagram.

3.1.3.1Use-Case Diagram

Untuk menganalisa komponen-komponen yang berperan dalam sistem yang dirancang, penulis menggunakan use-case diagram agar proses penganalisaan komponen dapat

dilakukan dengan mudah. Use-case diagram sistem pada aplikasi yang dirancang dapat dilihat pada Gambar 3.3.

System

Pengguna «uses» «uses» «uses» «uses» «uses» Maximum-Flow Menentukan kapasitas air

Menghitung kapasitas air

Update kapasitasl air

Proses pencarian hitung setiap kapasitas air setiap

iterasi

Hitung keseluruhan hasil aliran maximum

Gambar 3.3. Use-Case Diagram Pada Sistem

3.1.3.2Activity Diagram

Activity diagram menggambarkan berbagai alir aktivitas dalam system yang sedang dirancang. Bagaimana masing-masing aliran berawal, decision yang mungkin terjadi. Untuk menganalisa aktivitas-aktivitas yang akan berlangsung selama aplikasi dijalankan

diperlukan sebuah activity diagram. Berikut ini merupakan activitydiagram pada sistem yang akan dirancang.

Input nilai pada titik U,V,W,X,Y,Z

Pengguna menekan tombol iterasi

Pengguna menekan tombol update pada titik U,V,W,X,Y,Z

selesai Kembali ke home

Menampilkan hasil dari proses langkah setiap iteras i pada maximum-flow

PENGGUNA SYSTEM

Menampilkan nilai update dari titik U,V,W,X,Y,Z Pengguna menekan tombol hitung dari

Titik U,V,X,Y,Z

Menampilkan nilai maximum keseluruhan Membaca nilai U,V,W,X,Y,Z

Menampilkan nilai pada titik U,V,W,X,Y,Z

Mengitung nilai minimum pada titik U,V,W,X,Y,Z

System menghitung nilai kapasitas - minimum

flow + min

yes

no

3.1.3.3 Sequence Diagram

Sequence diagram adalah suatu diagram yang memperlihatkan atau menampilkan interaksi-interaksi antar objek didalam sistem yang disusun pada sebuah urutan atau rangkaian waktu. Sequence diagram digunakan untuk menggambarkan scenario atau rangkain langkah-langkah yang dilakukan sebagai sebuah respon dari suatu kejadian /

Input Maximum-flow Sumber(sourse ke tujuan (sink) iterasi

Pengguna

Input kapasitas

air Menentukan kapasitas air

Proses menhitung kapasitas air dari iterasi awal sampai

akhir

Proses menghitung setiap kapasitas airl pada setiap iterasi

Perhitungan nilai dari keseluruhan maximum Mengitung kapasitas air Update kapasitas air Mengulangi setiap angka pada setiap

kapasitas air

Hasil maximum

Gambar 3.5 Sequence Diagram Pada Sistem.

3.2Perancangan Sistem

3.2.1 Flowchart Sistem

Flowchart merupakan bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem. Flowchart menjelaskan tentang urutan-urutan dari prosedur yang ada didalam sistem dengan menggunakan simbol-simbol. Berikut ini merupakan flowchart awal dari sistem secara umum yang nantinya akan dibangun yang dapat dilihat Gambar 3.6.

Mulai Input nilai kapasitas air Menentukan kapasitas air Proses hitung kapasitas air pada iterasi selanjutnya

Mentukan titik awal sampai titik akhir

kapasitas air Input nilai yang dialiri setiap iterasi Yes No

Proses hitung setiap kapasitas air pada

setiap iterasi Mengulangi setiap aliran pada setiap

Gambar 3.6 Flowchart Sistem 3.2.2 Pseudocode Algoritma Maximum-flow

Pseudocode adalah teknik untuk menuliskan algoritma secara hight-level tanpa tergantung pada sebuah bahasa pemrograman. Penulisan pseudocode biasanya ditulis dengan menggunakan bahasa inggris dan diberi tambahan notasi matematika.

Pseudeocode Algoritma maximum-flow ditunjukkan oleh tabel 3.7 di bawah ini:

Tabel 3.7 Pseudocode Algoritma Maximum-flow

Baris Kode Pseudocode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

// public class MaxFlow extends JFrame {

// public void actionPerformed(ActionEvent evt) { int a,b,c;

//mengambil nilai string txt3 dan mengubahnya menjadi tipe integer kemudian menampungnya di variabel

a =

Integer.parseInt(txtVar3.getText());

a

//mengambil nilai string txt3 dan mengubahnya menjadi tipe integer kemudian menampungnya di variabel

b =

Integer.parseInt(txtNilaiTerkecil.getText());

a

//menjumlahkan variabel a dan b kemudian menampungnya di variabel

c = a-b;

c //mengubah

String hasil = String.valueOf(c);

data integer ke string di variabel hasil //menampilkan string hasil di label Hasil

18 19 20 21 22 23 24 25 26 27 28 29 30 31 } });

// lblHasil = new JLabel("Mencari Nilai Mininum :"); // lblNilaiMax = new JLabel("Nilai Maximum :"); // btnHitung = new JButton("Hitung");

End End

3.3 Perancangan sistem

3.3.1 Menu awal

Menu awal merupakan sebagai authentikasi data untuk mengakses halaman utama aplikasi. Halaman ini digunakan sebagai gambaran tampilan yang akan dilalui program selanjutnya. Agar dapat masuk kedalam aplikasi, maka pengguna harus memberikan button menandakan go to aplikasi sudah terdaftar sebelumnya.agar dapat melakukan proses selanjutnya Kemudian pengguna dapat melakukan proses selanjutnya. Tampilan dapat dilihat pada gambar 3.8

Gambar 3.8 Menu Awal

Keterangan:

1. Label yang berisi aplikasi logo universitas 2. Label judul

3. Label file nama penulis. 4. Label file fakultas.

5. Text box untuk menampilkan proses selanjutnya.

3.3.1.1Menu Utama

Menu utama adalah halaman yang digunakan sebagai antar-muka user setelah berhasil melakukan proses masuk dari menu awal. Halaman ini juga akan menampilkan posisinya berada berdasarkan cara kerja algoritma dapat dilihat seperti pada Gambar 3.9

logo (1)

JUDUL(2)

nama dan nim(3)

fakultas(5)

Gambar 3.9 Menu Utama

Menu utama berfungsi untuk menampilkan informasi tentang cara kerja dari algoritma. Dan menampilakan setiap iterasi-iterasi yang dilalui setiap variabel dan kapasitas yang sudah ditentukan menu utama dapat dilihat seperti pada Gambar 3.9

JUDUL(2) Iterasi(14) (4) Z(7) V(4) U(3) LOGO(1) Update(8) Hitung(13) W(5) Y(6) Log out(15) Mencari nilai maximum

Km Ws Km Km Km Ws Ws Ws Km Ws Km Km Km Ws Ws Ws Km Ws Km Km Km Ws Ws Ws Km Ws Km Km Km Ws Ws Ws Km Ws Km Km Km Ws Ws Ws Km Ws Km Km Km Ws Ws Ws WADAH PENAMPUNG AIR LAKI-LAKI PEREMPUAN Lantai 3 Lantai 3 Lantai 2 Lantai 2 Lantai 1 Lantai 1

Pipa air Pipa air

Pipa air Pipa air

Pipa air Pipa air

A L I R A N P I P A A I R S1 I L M U K O M P U T E R U S U Pipa air L E G E N D ws Km Wadah air = Aliran Air = Washtafel = Kamar Mandi = Wadah Penampung Air = Pipa Air Masing-Masing Bagian

Gambar 3.10 gambaran Ilustrasi Dari Penerapan Algoritma Maximum-Flow Dalam Optimasi Volume Air Pada Pipa S-1 Ilmu Komputer USU.

Dokumen terkait