BAB V IMPLEMENTASI
V.1
Perangkat Lunak Pengembangan Perangkat lunak yang digunakan dalam pengembangan perangkat lunak ini
adalah : 1. Borland Delphi 7.0 sebagai alat bantu pengembangan perangkat lunak berbahasa Object Pascal. 2. MySQL 5 sebagai server basis data yang digunakan untuk menyimpan data yang digunakan dalam perangkat lunak ini. 3. MySQL Workbench 5.1 sebagai perangkat lunak pengelolaan basis data. 4. MySQL-ODBC Connector 5.1 digunakan untuk penghubung ke database MySQL.
V.2
Implementasi Kelas Implementasi kelas dilakukan untuk menyusun kelas yang telah dirancang
pada Bab IV ke dalam bentuk kode sumber sesuai dengan bahasa pemrograman yang digunakan yaitu Object Pascal. Hubungan kelas-kelas perancangan dan kelas-kelas implementasi dapat dilihat pada Tabel V.1.
Tabel V.1. Hubungan Kelas Perancangan dan Kelas Implementasi Nama Kelas Perancangan
Nama Kelas Implementasi
Nama File Fisik
TVariable
TVariable
UObyekUji.pas
TVariableList
TVariableList
UObyekUji.pas
TObyekUjiVarList
TObyekUjiVarList
UObyekUji.pas
TObyekUji
TObyekUji
UObyekUji.pas
TObyekUjiList
TObyekUjiList
UObyekUji.pas
88
89
Nama Kelas Perancangan
Nama Kelas Implementasi
TNilaiTransformasi
TNilaiTransformasi
UObyekUji.pas
TNilaiTransformasiList
TNilaiTransformasiList
UObyekUji.pas
TClusterVarList
TClusterVarList
UCluster.pas
TCluster
TCluster
UCluster.pas
TClusterList
TClusterList
UCluster.pas
TClusterMemberList
TClusterMemberList
UCluster.pas
TProyekClustering
TProyekClustering
UProyekClustering.pas
TDBAkses
TDBAkses
UDB.pas
TDataReader
TDataReader
UDataReader.pas
TDataExporter
TDataExporter
UDataExporter.pas
TLogin
TLogin
ULogin.pas
TTambahProyek
UFTambahProyek.pas
Nama File Fisik
TLayarLogin TTambahProyek
TPengelolaanProjekClus TPengelolaanProjekClus tering tering
UPengelolaanProjekCluste ring.pas
TAnalisisClustering
TAnalisisClustering
UAnalisisClustering.pas
TClusterValidator
UClusterValidator.pas
TLayarUpdateVariable TLayarUpdateNilaiTran sformasi TLayarUpdateLabel TLayarAturParameter TClusterValidator
Pada Tabel V.1 dapat dilihat ada beberapa kelas perancangan yang digabungkan menjadi sebuah kelas implementasi. Hal ini dimungkinkan karena Borland Delphi mempunyai kemampuan untuk menggabungkan kelas interface dan kelas control ke dalam sebuah kelas.
90
Ada pun beberapa contoh pendeklarasian kelas yang telah disusun adalah sebagai berikut : 1. Pendeklarasian Kelas TObyekUji TObyekUji=class private public Id:String;VarList:TObyekUjiVarList; Next:TObyekUji; constructor Create(io:String); procedure SetId(io:String); function GetId():String; function VarListKosong():boolean; function Search(nv:String):TObyekUjiVarList; function GetIsiVariable(nv:String):String; procedure TambahVariable(Nama:String;Isi:String); procedure HapusVariablePertama(); procedure HapusSemuaVariable(); destructor Free; end;
2. Pendeklarasian Kelas TVariable TVariable=class private Nama:String; Bobot:Real; public Next:TVariable; constructor Create(nv:String;bv:Real); procedure SetNama(nv:String); procedure SetBobot(bv:Real); function GetNama:String; function GetBobot:Real; end;
3. Pendeklarasian Kelas TTransformasiNilai TNilaiTransformasi=class private NilaiAsli:String; NilaiPengganti:Real; public Next:TNilaiTransformasi; constructor Create(na:String;np:Real); procedure SetNilaiAsli(na:String); procedure SetNilaiPengganti(np:Real); function GetNilaiAsli:String; function GetNilaiPengganti:Real; end;
4. Pendeklarasian Kelas TCluster TCluster=class private Id:String; Nama:String; procedure UpdateNilaiVarList(); public
91
VarList:TClusterVarList; MemberList:TClusterMemberList; Next:TCluster; constructor Create(ic:String); procedure SetId(ic:String); procedure SetNama(nc:String); function GetId():String; function GetNama():String; function VarListKosong():boolean; function Search(nv:String):TClusterVarList; function GetIsiVariable(nv:String):Real; function TotalNilaiVariable:Real; procedure TambahVariable(Nama:String;Isi:Real); procedure HapusVariablePertama(); procedure HapusSemuaVariable(); function MemberListKosong():boolean; procedure TambahMember(id:String); procedure HapusMember(id:String); function SearchMember(id:String):TClusterMemberList; function BanyakMember():Integer; procedure HapusMemberPertama(); procedure HapusSemuaMember(); destructor Free; end;
Pendeklarasian-pendeklarasian kelas yang lain dapat dilihat pada dokumen teknis tesis ini. V.3
Implementasi Antarmuka Berdasarkan perancangan antarmuka pada Bab Perancangan, maka
antarmuka diimplementasikan menggunakan Form Designer dari Borland Delphi 7. Antarmuka yang diimplementasikan dapat dilihat pada Tabel V.2. Tabel V.2. Daftar Antarmuka Implementasi No
Antarmuka
Nama File Fisik
1. Login
ULogin.dfm
2. Pendefinisian Proyek Clustering
UPengelolaanProjekClustering.df m
3. Penambahan Proyek Clustering Baru
UFTambahProyek.dfm
4. Pengolahan Proyek Clustering
UAnalisisClustering.dfm
5. Penghapusan Proyek Clustering
UPengelolaanProjekClustering.df m
6. Input Obyek Uji
UAnalisisClustering.dfm
92
7. Pengolahan Variable
UAnalisisClustering.dfm
8. Pengolahan Nilai Transformasi
UAnalisisClustering.dfm
9. Pembacaan Data Obyek Uji
UDataReader.dfm
10. Analisis Clustering
UAnalisisClustering.dfm
11. Validasi Cluster
UClusterValidator.dfm
12. Output Cluster
UAnalisisClustering.dfm
13. Export Cluster
UDataExporter.dfm
Beberapa contoh antarmuka yang telah diimplementasikan dapat dilihat pada Gambar V.1 sampai Gambar V.5 di bawah ini. Untuk implementasi antar muka yang lain dapat dilihat pada acuan teknis tesis.
Gambar V.1 Interface Layar Login
Gambar V.2 Interface Layar Pendefinisian Proyek Clustering
93
Gambar V.3 Interface Layar Pengolahan Proyek Clustering
Gambar V.4 Interface Layar Analisis Clustering
94
Gambar V.5 Interface Layar Output Cluster