3. Graph Graph.java
Graph.class 4. CheckBoxTableM
odel CheckBoxTableModel.java CheckBoxTableModel.class
5. DataCof DataCof.java
DataCof.class 6. CofTableModel
CofTableModel.java CofTableModel.class
7. DataControl DataControl.java
DataControl.class 8. SeleksiAtributCont
rol SeleksiAtributControl.java
SeleksiAtributControl.class
9. HomePage HomePage.java
HomePage.class 10. Home
Home.java Home.class
11. PilihDataBase PilihDataBase.java
PilihDataBase.class 12. PilihTabel
PilihTabel.java PilhTabel.class
13. PilihFile PilihFile.java
PilihFile.class 14. About
About.java About.class
15. Help Help.java
Help.class
Listing program dari tiap-tiap kelas akan di jelaskan pada lampiran
6.
10.3 Implementasi Struktur Data
Berikut ini akan di jelaskan implementasi struktur data pada kelas Vertex dan Graph yang telah di sebutkan pada bab sebelumnya.
10.3.1 Implementasi Kelas Vertex.java
Kelas Vertex ini di gunakan untuk membuat sebuah Vertex dalam graph. Di dalam kelas Vertex ini terdapat atribut-atribut yang di gunakan untuk
menyimpan nilai dari sebuah obyek. Atribut-atribut yang terdapat pada kelas Vertex.java adalah labelP dengan tipe data String yang di gunakan untuk
menyimpan setiap label pada obyek, nilaiP dengan tipe data ListDouble yang di gunakan untuk menyimpan setiap nilai pada obyek untuk perhitungan jarak
menggunakan rumus Euclidian Distance, wasVisitedP dengan tipe data boolean yang di gunakan untuk menandai tetangga dari obyek yang memiliki jarak kurang
dari kDistance, kDistance dengan tipe data Double yang di gunakan untuk menyimpan nilai dari jarak jangkauan maksimum dari setiap obyek, nkp dengan
tipe data ListString yang di gunakan untuk menyimpan label tetangga yang nilainya kurang dari kDistance, sbnPath dengan tipe data ListString yang di
gunakan untuk menyimpan label tetangga terdekat dari obyek yang nilainya kurang dari kDistance, sbnTrail dengan tipe data ListString yang di gunakan
untuk menyimpan urutan dari jarak terdekat suatu obyek ke tetangganya yang berdasarkan sbnPath, acDist dengan tipe data Double yang di gunakan untuk
menyimpan nilai hasil perhitungan dari rata-rata jarak terdekat dari sbnTrail, cof dengan tipe data Double yang di gunakan untuk menyimpan nilai hasil
perhitungan COF dari masing-masing obyek, acDistTetangga dengan tipe data Double yang di gunakan untuk menyimpan nilai jumlah dari acDist tetangga.
10.3.2 Implementasi Kelas Graph.java
Kelas Graph ini di gunakan untuk membentuk sebuah graph. Di dalam kelas ini akan di panggil atribut yang telah di buat dalam kelas Vertex.java untuk
membangun sebuah vertex. Di dalam kelas Graph ini, akan di buat sebuah graph dan di definisikan dalam constructor Graph dengan parameter MAX_VERTS.
MAX_VERTS di definisikan sebagai nilai maksimum dari sebuah vertex untuk public class Vertex {
private String labelP; private ListDouble nilaiP;
private boolean wasVisitedP; private Double kDistance;
private ListString nkp; private ListString sbnPath;
private ListString sbnTrail; private Double acDist;
private Double cof; private Double acDistTetangga;
public VertexString labelP, ListDouble nilaiP {
graph yang akan di bentuk. adjMat di definisikan sebagai edge yang akan
menghubungkan vertex.
Setelah graph terbentuk, maka akan di tambahkan vertex ke dalam graph tersebut. Method untuk menambah vertex adalah addVertex dengan parameter
label dan nilai. Jadi akan di tambahkan vertex dengan dengan atribut label dan
nilai.
Setelah itu akan di lakukan pengisian nilai edge menggunakan method addEdge dengan parameter start, end, dan weight. Jadi akan di hitung jarak antar
obyek dari obyek itu sendiri ke obyek lain dan akan di masukan rumus jarak Euclidian Distance
ke dalam weight. public Graphint MAX_VERTS {
vertexList = new Vertex[MAX_VERTS]; adjMat = new Double[MAX_VERTS][MAX_VERTS];
nVerts = 0; for int i = 0; i MAX_VERTS; i++ {
for int j = 0; j vertexList.length; j++ { adjMat[i][j] = INFINITY;
} }
}
public void addVertexString label, ListDouble nilai { vertexList[nVerts++] = new Vertexlabel, nilai;
}
public void addEdgeint start, int end, Double weight { adjMat[start][end] = weight;
adjMat[end][start] = weight; }
Perhitungan Ecluidian
Distance dilakukan
dengan method
calculateEcluidianDistance dengan parameter array1 dan array2. Di dalam
method ini akan memanggil dan menambahkan nilai ke dalam vertex, kemudian akan di hitung menggunakan rumus seperti di bawah ini.
public Double calculateEcluidianDistanceint array1, int array2 { Double sum = 0.0;
ListDouble x = vertexList[array1].getNilaiP; ListDouble y = vertexList[array2].getNilaiP;
for int i = 0; i x.size; i++ { sum = sum + Math.powx.geti - y.geti, 2.0;
} return Math.sqrtsum;
}
99
BAB VI PENGUJIAN DAN ANALISA HASIL PENGUJIAN
Pada bab ini akan di jelaskan mengenai pengujian dan analisa hasil pengujian yang di lakukan. Pengujian suatu sistem sangat di perlukan dalam
pembuatan sebuah aplikasi. Dimana dengan melakukan pengujian kemungkinan akan di temukan kesalahan dalam suatu aplikasi tersebut. Dengan demikian, akan
dapat di ketahui kesalahan dan di dapat penyelesaian dari kesalahan tersebut. Berikut akan di jelaskan pengujian dan analisa hasil pengujian dari sistem deteksi
outlier menggunakan algoritma Connectivity-based Outlier Factor.
17.1 Rencana Pengujian
Akan di lakukan tiga macam pengujian dalam sistem ini, yang pertama adalah pengujian dengan menggunakan blackbox, pengujian dengan perubahan
nilai atribut yaitu k, dan yang terakhir adalah pengujian reviewer dan validitas oleh pengguna atau user.
Pengujian blackbox yang di maksudkan adalah pengujian untuk mengetahui apakah semua fungsi perangkat lunak telah berjalan semestinya sesuai
dengan kebutuhan fungsional yang telah di definisikan. Pengujian dengan perubahan nilai atribut k dilakukan dengan mengubah
nilai atribut dengan menambah atau mengurangi nilai atribut tersebut. Pengujian reviewer dan validitas oleh pengguna atau user akan di lakukan
oleh penguna atau user dari sistem ini yaitu Kaprodi Teknik Informatika Universitas Sanata Dharma. Pengujian di lakukan dengan membandingkan hasil
pengujian dari sistem dan analisa dari Kaprodi Teknik Informatika Universitas Sanata Dharma.
Berikut ini merupakan tabel rencana pengujian blackbox yang akan di lakukan pada masing-masing kelas dalam sistem ini.