• Tidak ada hasil yang ditemukan

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT LUNAK

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT LUNAK"

Copied!
24
0
0

Teks penuh

(1)

BAB III

PERANCANGAN DAN PEMBUATAN

PERANGKAT LUNAK

3.1 Deskripsi Kebutuhan Sistem

Berikut ini akan dijelaskan tentang beberapa kebutuhan sistem yang menunjang dalam pembuatan Proyek Akhir yan terdiri dari hardware maupu software sebagai berikut ini :

1. Hardware

Komputerminimal 1 buah dengan spesifikasi minimum sebagai berikut :

1. CPU : Processor Core 2 Duo 2. Harddisk : 120 Gb

3. Memory : 1 Gb

4. Monitor : Resolusi 1024 x 768 2. Software

−Operating sistem yang digunakan yaitu Winddows Vista. −Tools pendukung VB.Net dan MySQL.

3.2 Perancangan Sistem 3.2.1 Diagram Sistem

Proses kerja sistem pada Proyek Akhir ini adalah dimulai dari user kemudian menuju aokikasi dan selanjutnya akan kembali lagi ke user dengan hasil berupa keputussan atau diagnosis penyakit.

Secara garis besar proses-proses yang terjadi di dalam perancangan sistem adalah sebagai berikut

:

Gambar 3. 1 Diagram Perancangan Sistem

Sedangkan aliran data pada sistemnya digambarkan pada Data Flow Diagram dibawah ini

(2)

Gambar 3. 2 Data Flow Diagram Level 0 Sedangkan untuk aliran data pada level 1 adalah

Gambar 3. 3 Data Flow Diagram Level 1 3.2.2 Diagram Alir (Flowchart) Sistem

Diagram alir ( flowchart ) sistem ini dapat digambarkan seperti berikut ini :

(3)

Gambar 3. 4 Flowchart Sistem

3.2.3 Uraian Design Sistem

Ketika aplikasi ini dijalankan maka pertama kali akan meminta input dari user. Inputannya berupa gejala – gejala yang menyertainya. Kemudian data tersebut diproses atau mengalami tahap preprocessing untuk diseleksi data yang tidak perlu serta ditangani missing valuenya.

STA RT

Data gejala -gejala kanker kandungan

Input gejala , hasil screen test Ada Input Proses penggolahan data dengan naive bayes STO P Keputusan apakah m enderita

kanker apa tidak Y

(4)

Selanjutnya barulah dilakukan pembelajaran terhadap data gejala dari data training yang sebelumnya telah tersimpan di database.

Selanjutnya dilakukan proses klasifikasi untuk mengklasifikasikan gejala - gejala menjadi 2 kelompok yaitu yang sesuai dengan gejala penyakit dan yang tidak sesuai. Selanjutnya diadakan testing untuk menghasilkan keputusan mengenai jenis penyakit kankernya.

3.2.4 Design Database

Perancangan database dilakukan dengan mebuat tabel-tabel untuk menampung data dari hasil preprocessing yang akan dibuat untuk data training. Data training ini nantinya akan diklasifikasikan dengan metode naive bayes sehingga dihasilkan keluaran berupa keputusan atau diagnosis apakah seseorang menderita kanker atau tidak. Tabel yang digunakan adalah

• Tabel diagnosis

Tabel ini berfungsi untuk menyimpan informasi mengenai semua riwayat pasien baik yang positif menderita penyakit kanker ataupun tidak. Data di sini telah mengalami proses preprocessing data. Sehingga

missing value telah ditangani. Deskripsi dari tabel ini dapat dilihat pada

Tabel 3.3.

Tabel 3. 1 Struktur table diagnosa

Nama Kolom Tipe Data Keterangan Fungsi

Id Integer Primary Key Menyimpan id

pasien

Umur Integer Menyimpan umur

oasien Kawin Character varying (20) Menyimpan data riwayat perkawinan usia_reproduktif Character varying (30) Menyimpan keterangan menopause tekanan_darah Character varying (30) Menyimpan keterangan tekanan darah Pola_haid Character varying (30) Menyimpan keterangan siklus haid Nyeri_haid Character varying (30) Menyimpan keterangan nyeri haid

(5)

Keputihan Character varying (30) Menyimpan data keputihan Pendarahan Character varying (30) Menyimpan data pendarahan Nyeri_perut Character varying (30) Menyimpan data nyeri perut Benjolan_perut Character varying (30) Menyimpan data benjolan perut Benjolan_tumbu h Character varying (30) Menyimpan data benjolan tumbuh pada perut Benjolan_berger ak Character varying (30) Menyimpan data benjolan bergerak pada perut pucat Character varying (30) Menyimpan data gejala pucat mntah Character varying (30) Menyimpan data gejala muntah Panas_tubuh Character varying (30) Menyimpan data gejala panas tubuh diagnosis Character

varying (30) Hasil diagnosis

3.3 Pre-processing

Pre-processing data merupakan proses untuk menyiapkan data

mentah dengan tujuan agar data tersebut siap untuk diolah selanjutnya. Data mentah yang ada yaitu data kategorikal yang masih memiliki kekurangan yang harus dilakukan seleksi lagi sehingga menghasilkan informasi yang sama. Karena untuk metode bayes dan data kategorikal yang akan dipakai harus berupa data yang konkret sehingga dapat diproses dengan naive bayes.

3.3.1 Kodisi Data Awal

Data yang digunakan pada sistem aplikasi ini merupakan data riil dari gejala-gejala penyakit kanker kandungan yang berasal dari Rumah Sakit Gambiran kota Kediri.

Data-data tersebut merupakan data kategorikal , dimana terdapat data yang tidak konsisten atau hilang (missing value). Sehingga perlu dilakukan penanganan agar data dapat diproses lebih lanjut.

Adapun preprocessing data yang akan dilakukan meliputi :

1. Adanya seleksi terhadap data yang tidak penting dalam proses pengklasifikasian. Terdapat beberapa field yang informasinya

(6)

tidaklah begitu penting, sehingga perlu dihilangkan, seperti field nama pasien.

2. Adanya penanganan missing value yang akan menangani adanya nilai dari field atau atribut yang hilang atau tidak ada dalam database. Solusi yang akan digunakan adalah dengan mengganti nilai tersebut berdasarkan frekuensi nilai yang sering muncul.

Tabel 3. 2 Data riil yang digunakan

Setiap data yang diperoleh perlu dilakukan penyesuaian dalam hal atribut yang dimiliki, sehingga tidak semua atribut akan digunakan. Jika dirinci, maka

1. id.

Atribut untuk id pasien yang unik. 2. umur

Atribut untuk menyimpan data umur pasien 3. kawin.

Atribut untuk menyimpan data riwayat perkawinan pasien. Di sini menyimpan data apakah pasien menikah atau tidak.

4. Usia_reproduktif

Atribut untuk menyimpan data pasien apakah masih dalam usia reproduktif atau tidak.

(7)

5. Tekanan_darah

Atribut untuk menyimpan data tekanan darah pasien. Apakah tensinya normal, rendah tau tinggi.

6. Pola_haid

Atribut untuk menyimpan data riwayat menstruasi pasien apakah teratur atau tidak teratur.

7. Nyeri_haid

Atribut untuk menyimpan data riwayat menstruasi pasien apakah mengalami nyeri haid atau tidak.

8. Keputihan

Atribut untuk menyimpan data riwayat keputihan pada pasien, apakah mengalami keputihan atau tidak.

9. Pendarahan

Atribut untuk menyimpan data gejala pendarahan pada pasien, apakah mengalami pendarahan atau tidak.

10. Nyeri_perut

Atribut untuk menyimpan data gejala nyeri perut pada pasien, apakah mengalami nyeri perut atau tidak.

11. Benjolan_perut

Atribut untuk menyimpan data gejala benjolan pada perut pasien, apakah mengalami benjolan pada perut atau tidak.

12. Benjolan tumbuh

Atribut untuk menyimpan data gejala benjolan pada perut pasien tersebut tumbuh membesar, apakah benjolannya tumbuh atau tidak.

13. Benjolan bergerak

Atribut untuk menyimpan data gejala benjolan yang bergerak pada perut pasien, apakah benjolannya bergerak atau tidak.

14. Muntah

Atribut untuk menyimpan data gejala muntah pada pasien , apakah mengalami muntah-muntah atau tidak.

15. Pucat

Atribut untuk menyimpan data gejala pucat pada pasien, apakah terlihat pucat atau tidak.

16. Badan_panas

Atribut untuk menyimpan data panas tubuh pada pasien, apakah pasien bersuhu tinggi atau tidak.

(8)

Semua data yang akan dibuat ini digunakan sebagai data riil yang akan diproses lagi dengan dengan preprocessing data. Di mana beberapa telah dihilangkan karena tidak berpengaruh dalam proses pengklasifikasian. Umtuk lebih jelasnya data riil dapat dilihat pada lampiran.

3.3.2 Proses Preprocessing Data

Pada tahap ini terjadi proses preprocessing sehingga dihasilkan data yang konsisten dan siap untuk diproses lebih lanjut.

Adapun preprocessing data yang akan dilakukan meliputi :

1. Adanya seleksi terhadap data yang tidak penting dalam proses pengklasifikasian. Terdapat beberapa field yang informasinya tidaklah begitu penting, sehingga perlu dihilangkan. Dalam kasus ini dilakukan penghapusan data nama karena tidak mempengaruhi proses selanjutnya.

2. Adanya penanganan missing value yang akan menangani adanya nilai dari field atau atribut yang hilang atau tidak ada dalam database. Data yang diguynakan dalam sistem ini adalah data riil yang berupa data kategorikal. Sehingga solusi yang akan digunakan adalah dengan mengganti nilai tersebut berdasarkan frekuensi nilai yang sering muncul.

Sehingga data training yang telah mengalami preprocessing adalah Tabel 3. 3 Data Training

(9)

3.4 Proses Naive Bayes

Proses Naive Bayes dalam sistem ini merupakan proses yang utama. Metode ini cukup baik untuk proses pengklasifikasian data untuk menghasilkan keputusan sebagai hasil diagnosis dengan menggunakan data training sebagai data learning. Proses yang dilakukan oleh metode ini meliputi proses penghitungan probabilitas dari setiap inputan data dari user yang kemudian dilanjutkan dengan menbandingkan setiap hasilnya. Kemudian barulah dilakukan pengambilan kesimpulan atau keputusan untuk menentukan diagnosis pasien.

3.4.1 Algoritma Naive Bayes

Algoritma Naive Bayes ini digunakan untuk mengetahui bagaimana proses dari metode ini berjalan sehingga menghasilkan keputusan pada aplikasi diagnosis kanker kandungan ini.

Tahap-tahap dari pengambilan keputusan dengan Naive Bayes adalah

1. Memasukkan parameter atau input data yanga kan diproses.

2. Mencari nilai atribut hasil terakhir yang akan menjadi hasil diagnosis kelompokkan sesuai banyaknya yaitu yang kanker dan yang normal.

3. Mencari nilai probabilitas dari setiap atribut berdasarkan pengelompokan hasil akhir.

4. Melakukan pengelompokkan (dalam hal ini melakukan pengkalian) pada masing-masing probabilitas tiap-tiap atribut sesuai dengan jenis hasil diagnosis.

5. Dari langkah no 5 kemudian mencari nilai probabilitas terbesar sehingga dihasilkan kesimpulan atau keputusan diagnosisnya.

3.4.2 Proses Penghitungan Probabilitas

Proses penghitungan dalam sistem ini menggunakan metode naive bayes yang meliputi beberapa tahap seperti pengklasifikasian hasil diagnosis, mencari probabilitas tiap atribut, serta mencari nilai terbesar untuk menghasilkan keputusan sebagai diagnosis.

Untuk menghitung probabilitas bersyarat untuk menghasilkan keputusan dapat dimisalkan dengan menggunakan tabel berikut ini

(10)

Tabel 3. 4 Tabel Data Traning

Kemudian dimisalkan terdapat data tes sebagai berikut ini : • umur : 36

• kawin : ya

• usia_reproduktif : ya • pola_haid : tidak teratur • nyeri_haid : ya • keputihan : ya • pendarahan : ya • nyeri_perut : ya • benjolan_perut : ya • benjolan_tumbuh : tidak • benjolan_bergerak : tidak • muntah : tidak • pucat : tidak • badan_panas : tidak Maka : P(cervix) = P(C1) = 17/20 P(tidak) = P(C2) = 3/20 P(X1 = kawin/C1) = 15/17 P(X1 = kawin/C2) = 3/3 P(X2 = reproduksi /C1) = 12/17 P(X2 = reproduksi /C2) = 3/3 P(X3 = pola_haid /C1) = 8/17 P(X3 = pola_haid/C2) = 1/3

(11)

P(X4 = nyeriHaid /C1) = 9/17 P(X4 = nyeriHaid /C2) = 1/3 P(X5 = keputihan/C1) = 14/17 P(X5 = keputihan/C2) = 1/3 P(X6 = pendarahan/C1) = 17/17 P(X6 = pendarahan/C2) = 0/3 P(X7 = nyeriperut /C1) = 9/17 P(X7 = nyeriperut /C2) = 0/3 P(X8 = benjolan perut /C1) = 9/17 P(X8 = benjolan perut /C2) = 3/3 P(X9 = benjolan tdk tumbuh /C1) = 1/17 P(X9 = benjolan tdk tumbuh /C2) = 0/3 P(X10 = benjolan tdk bergerak /C1) = 1/17 P(X10 = benjolan tdk bergerak /C2) = 0/3 P(X11 = muntah /C1) = 17/17 P(X11 = muntah /C2) = 3/3 P(X12 = pucat /C1) = 1/17 P(X12 = pucat/C2) = 1/3 P(X13 = badan_panas /C1) = 1/17 P(X13 = badan_panas /C2) = 1/3

P(X(36, ya, ya, tidak teratur, ya, ya, ya, ya, ya, tidak, tidak, tidak, tidak, tidak)/C1) = P(X1/C1). P(X2/C1). P(X3/C1). P(X3/C1). P(X4/C1). P(X5/C1). P(X6/C1). P(X7/C1). P(X8/C1). P(X9/C1). P(X10/C1). P(X11/C1). P(X12/C1). P(X13/C1). =15/17 x 12/17 x 8/17 x 9/17 x 14/17 x 17/17 x 9/17 x 9/17 x 1/17 x 1/17 x 17/17 x 1/17 x 1/17

(12)

P(C1/X) = ) ( ) 1 ( ). 1 / ( X P C P C X P =

98415

2

= 0,000020322

P(X(36, ya, ya, tidak teratur, ya, ya, ya, ya, ya, tidak, tidak, tidak, tidak, tidak)/C2) = P(X1/C2). P(X2/C2). P(X3/C2). P(X3/C2). P(X4/C2). P(X5/C2). P(X6/C2). P(X7/C2). P(X8/C2). P(X9/C2). P(X10/C2). P(X11/C2). P(X12/C2). P(X13/C2). =

3/3 x 3/3 x 1/3 x 1/3 x 1/3 x 0 x 1/3 x 0 x 3/3

P(C2/X) = ) ( ) 2 ( ). 2 / ( X P C P C X P = 0

Sehingga P(C1/X) > P(C2/X) maka tupel tersebut terkena kanker 3.5 Pembuatan Aplikasi

Semua data yang ada pada database akan ditampilkan pada aplikasi sebagai data training. Data ini sebagai acuan dalam pengambilan keputusan tentang diagnosis dini penyakit kanker kandungan. Di mana data training tersebut kan mengalami pengklasifikasian dengan metode naive bayes.

3.5.1 Design User Interface

Graphical User Interface atau yang sering disebut sebagai GUI

adalah tampilan dari program yang bisa dinikmati oleh user. Perancangan User Interface harus dibuat semenarik dan seindah mungkin dengan tetap mengutamakan kenyamanan dalam mengoperasikan program (user friendly). Tampilan User Interface dituangkan dalam sebuah web site yang dibangun dengan menggunakan bahasa pemrograman VB.Net

Dalam proses perancangan ini, tampilan web akan dibagi menjadi beberapa menu.

(13)

Tampilan utama aplikasi

Berikut ini adalah tampilan utama dari aplikasi dengan berbagai menu yang disediakan.

Gambar 3. 5 Interface utama Halaman untuk login user

Halaman ini akan dioperasikan oleh user untuk melakukan login terhadap aplikasi. Di sini disediakan beberapa user dengsn hak akses sendiri-sendiri. Di sini dimisalkan terdapat user admin sebagai administrator serta paramedis sebagai user biasa.

Gambar 3. 6 Tampilan Login user Halaman untuk data training

Halaman ini merupakan tempat untuk melakukan manipulasi terhadap data training. Disini terdapat beberapa menu untuk mengolah databse seperti add, edit, delete ataupun save.

(14)

Gambar 3. 7 Tampilan Halaman Data Training Halaman untuk proses diagnosis

Halaman ini adalah halaman untuk melakukan proses Naive Bayes. Disini merupakan inti aplikasi dimana akan diketahui apakah pasien atau seseorang menderita kanker atau tidak. Diawali dengan menginputkan data sesuai gejala-gejala yang telaha ditentukan, kemudian menekan tombol proses maka akan didapatkan diagnosis awal

(15)

3.5.2 Implementasi

Pada bagian ini akan dibahas mengenai implementasi sistem berdasarkan hasil perancangan yang telah ditetapkan sebelumnya. Implementasi sistem meliputi lingkungan implementasi dan implementasi program

.

Adapun tahapan uji cobanya adalah

1. Melakukan login sesuai dengan hak akses user.

Admin atau dokter mempunyai hak akses penuh terhadap aplikasi. Hak aksesnya meliputi dapat melakukan perubahan pada data training dan juga melakukan diagnosis. Sedangkan paramedis yang lain seperti perawat hanya dapat mengakses form diagnosis saja.

 User dokter (administrator)

Gambar 3. 9 Login dokter  User perawat

(16)

Adapun potongan programnya adalah

Pada baris ke 3 sampai ke 16 adalah fungsi untuk menginputkan semua user. Dimana untuk login username dan password harus sesuai. Dan apabila tidak maka user harus kembali menginputkan username dan passwordnya yang benar. Setelah itu barulah masuk ke halaman yang dituju.

2. Melakukan input data training

Setelah melakukan login dokter maka user akan masuk pilihan menu apakah ke form data training atau langsung ke form diagnosis. Apabila memilih data training maka akan masuk ke form ini. Disini terdapat beberapa menu untuk mengolah databse seperti add, edit, delete ataupun save.

(17)

Gambar 3. 11 Halaman Data Training

(18)

Gambar 3. 12 Menginputkan Data

Gambar 3. 13 Data berhasil ditambahkan

(19)

Gambar 3. 14 Melakukan pengeditan data

Gambar 3. 15 Data berhasil diupdate

(20)

Gambar 3. 16 Melakukan pengeditan Data

(21)

Perintah insert data baru ke dalam database tampak pada baris ke 180 – 203. Sedangkan untuk edit data tampak pada baris ke 218-242

Gambar 3. 17 Form Diagnosis 3. Mendapatkan hasil diagnosis dini

Inilah hasil dignosis dari proses pengklasifikasian dengan metode naive bayes. Hasil diagnosis akan muncul setelah semua data dinputkan dan button proses diklik. Maka dari inputan gejala didapatkan seseorang menderita penyakit kanker cervix.

(22)

Gambar 3. 18 Hasil diagnosis muncul Potongan fungsi untuk halaman diagnosis

PrivateSub banding() Dim tmp Dim inisial inisial = 0 tmp = 0 If totalCancer >= tmp Then tmp = totalCancer inisial = 1 EndIf If totalNormal >= tmp Then tmp = totalNormal inisial = 2 EndIf hasil = tmp If inisial = 1 Then MsgBox("P(C1/X1) > P(C2/X2)") txtHasil.Text = "cancer"

ElseIf inisial = 2 Then

MsgBox("P(C1/X1) < P(C2/X2)") txtHasil.Text = "normal"

EndIf EndSub

(23)

Potongan program diatas menunjukkan proses penghitungan dari proses naive bayes. Dimana terdapat pembandingan nilai dari hasil probabilitas dari setiap pengklasifikasian untuk mendapatkan keputusan berupa hasil diagnosis. Apabila P(C1/X1) > P(C2/X2) maka hasilnya adalah terkena kanker kandungan. Sedangkan apabila kebalikkannnya maka hasilnya normal atau tidak terkena kanker.

(24)

Gambar

Gambar 3. 2 Data Flow Diagram Level 0  Sedangkan untuk aliran data pada level 1 adalah
Gambar 3. 4 Flowchart Sistem
Tabel  ini  berfungsi  untuk  menyimpan  informasi  mengenai  semua  riwayat  pasien  baik  yang  positif  menderita  penyakit  kanker  ataupun  tidak
Tabel 3. 2 Data riil yang digunakan
+7

Referensi

Dokumen terkait

tahun 1958 beliau telah menyertai PAS dan menyandang jawatan Exco PAS Selangor.Oleh kerana beliau tidak bersetuju dengan beberapa perkara yang terdapat di

Intervensi pemerintah untuk mendorong pertumbuhan sektor pertanian dalam rangka mengurangi kemiskinan dapat dilihat dari sisi anggaran s ek to r pe rtania n (rutin

Membuat Iklan Animasi 2D yang diharapkan bisa memberikan pengaruh positif kepada masyarakat agar dapat mengenal produk lokal yang berkwalitas dan Penjualan Gula

Bahan penting yang terkandung dalam kelompak bunga Rosella adalah Gossy peptin anthocyanin dan glucoside hibiscin yang mempunyai efek  diuretic dan choleretic, memperlancar

Data yang digunakan yaitu data Curah Hujan Rancangan periode ulang 2, 5, 25, 50, dan 100 tahun dengan metode Gumbel sehingga diperoleh debit banjir rancangan yang disajikan Tabel

Berdasarkan hasil penelitian ini membuktikan bahwa media audio visual lebih efektif dibandingkan dengan pembelajaran tanpa media audio visual dalam meningkatkan minat

Untuk mengetahui pengaruh jenis presipitan terhadap hasil pengendapan emas, setelah tahap proses leaching menggunakan aqua regia dilakukan proses pengendapan

Pada tipologi pemanfaatan ruang rumah campuran akan memanfaatkan sumberdaya uang lebih sedikit dibandingkan dengan tipologi ruang rumah terpisah, pemanfaatan waktu pada