Dekomposisi Web Service pada ERP Pondok Pesantren Menggunakan Parsing WSDL
1. DEKOMPOSISI WEB SERVICE PADA
ENTERPRISES RESOURCE PLANNING
PONDOK PESANTREN MENGGUNAKAN
PARSING WEB SERVICE DESCRIPTON
LANGUAGE
Oleh : Fian Risdia Wulan (13650090)
5. RUMUSAN MASALAH
5
1. BAGAIMANA CARA MENDAPATKAN
WEB SERVICE ATOMIK DENGAN
PARSING WSDL?
2. BAGAIMANA CARA MELAKUKAN
CLUSTERING HASIL DEKOMPOSISI
WEB SERVICE ?
6. TUJUAN & MANFAAT PENELITIAN
6
MANFAAT PENELITIAN
1. Mengurangi kompleksitas waktu
pencocokan dalam web service
discovery.
2. Meningkatkan efisiensi penggunaan
resource.
3. Mengelompokkan web service untuk
mempermudah proses discovery.
TUJUAN PENELITIAN
1. Melakukan dekomposisi web
service pada ERP Pondok Pesantren
menggunakan parsing WSDL.
2. Melakukan clustering hasil
dekomposisi web service
menggunakan k-means clustering.
7. BATASAN MASALAH
1. Web service yang digunakan adalah web service ERP Pondok
Pesantren yang telah dibangun pada penelitian sebelumnya.
2. Menggunakan dokumen WSDL.
3. Web service dibangun dengan PHP dan NuSOAP.
4. Dekomposisi web service menggunakan dokumen WSDL
bagian server.
5. Clustering web service berdasarkan operation name,
parameter input, dan tipe data output.
7
11. WEB SERVICE
11
Service Publication and
Discovery (UDDI)
Service Description (WSDL)
XML Based Messaging
(SOAP)
Common Internet
Protocols (HTTP, TCP/IP)
Elemen-Elemen
Web Service
12. WEB SERVICE DEFINITION LANGUAGE (WSDL)
12
<definitions>
<types>
data type definitions........
</types>
<message>
definition of the data being
communicated....
</message>
<portType>
set of operations......
</portType>
<binding>
protocol and data format
specification....
</binding>
<service>
<port> . . . </port>
</service>
</definitions>
13. DEKOMPOSISI WEB SERVICE
13
Penulis Judul Tahun Pembahasan
M. Tatsubori,
K. Takahashi
Decomposition
and Abstraction of
Web Applications
for Web Service
Extraction and
Composition
2006 Menjelaskan penggunan framework bernama H2W dapat digunakan untuk
membangun web service wrapper yang ada, yaitu multi-paged web application.
H2W berkontribusi pada tahap ekstraksi layanan. Penulis mengusulkan model
dekomposisi berdasarkan page-transition dan model abstraksi akses halaman
dengan propagasi konteks. Dengan dekomposisi dan abstraksi yang diusulkan,
developer dapat membangun web service wrapper dengan fleksibel.
S. Lagraa, et.al A Graph
Decomposition
Approach to Web
Service
Matchmaking
2011 Menyajikan dekomposisi berdasarkan metode web service matchmaking.
Keuntungan utama mendekomposisi graph web service menjadi sub-struktur
yang lebih kecil adalah untuk mengurangi kompleksitas waktu pencocokan.
Algoritma yang diusulkan memperhitungkan karakteristik utama dari graph web
service : directed edges dan menggunakan graph matching tool yang efisien.
Pada structural matching ditambahkan perhitungan semantic similarity untuk
meningkatkan presisi pencocokan.
14. CLUSTERING
14
PARTITIONING
CLUSTERING
Objek - objek dikelompokkan
kedalam klaster yang telah
ditentukan.
Contoh : k-means
HIERARCHICAL
CLUSTERING
Objek-objek dalam klaster-
klaster kecil yang mirip
bergabung menjadi klaster
yang lebih besar.
Contoh : agglomerative
(bottom-up), divisive (up-
bottom)
15. K-MEANS CLUSTERING
K-Means merupakan algoritma untuk membentuk
cluster n objek berdasarkan atribut menjadi k
partisi. Salah satu kelebihan metode k-
means diantaranya adalah mudah
diimplementasikan dan mampu mengelompokan
objek besar dengan cepat sehingga mempercepat
proses pengelompokan.
15
21. PARSING DATA
Merupakan proses pemilahan elemen - elemen yang terdapat
pada file WSDL untuk selanjutnya dilakukan pengolahan data.
Proses parsing dalam penelitian ini menggunakan ekstensi PHP
yaitu simpleXML untuk mendapatkan data dari file xml.
SimpleXML merupakan parser berbasis pohon yang sesuai
dengan struktur dokumen WSDL
21
22. MENDAPATKAN FUNGSI DAN TIPE DATA
22
Operation Name
kegiatan.getTahunAjaran
kegiatan getTahunAjaran
Class Function
Message Name Message Type
kegiatan.getTahunAjaranResponse tns:TahunAjaranArray
Tipe Data Output Array
Mendapatkan Fungsi dari
Operation Name
Mendapatkan Tipe Data Output dari
MessageResponse
23. PEMBUATAN WSDL BARU
23
<?php
include ("folder/setting.php");
$SOAP = new class('namaClass');
$SOAP->registerFunction('function',"output");
$SOAP->execute();
?>
Generate WSDL
dengan NuSOAP
Fungsi dan tipe
data output
Script untuk memanggil fungsi-fungsi
web service
25. PEMBOBOTAN KATA
1. N adalah jumlah semua dokumen
dalam koleksi;
2. df adalah jumlah dokumen yang
mengandung term;
3. Idf : Inversed Document Frequency
1. d : dokumen ke-d;
2. t : kata ke-t dari kata kunci;
3. W : bobot dokumen ke-d terhadap
kata ke-t;
4. tf : banyaknya kata yang dicari
pada sebuah dokumen;
5. IDF : Inversed Document Frequency
25
28. TAMPILAN DATA WEB SERVICE
Hasil penyimpanan data web service
ditampilkan seperti pada gambar
disamping. Terdapat tiga tombol yang
masing-masing berfungsi untuk
parsing, edit, dan hapus data.
Proses parsing akan dilanjutkan ketika
semua elemen WSDL lengkap.
28
29. TAMPILAN SIMPAN WEB SERVICE
Informasi web service yang disimpan ke
dalam database, yaitu nama web
service, alamat URL WSDL, nama folder
setting, dan file WSDL berformat .xml
29
30. Data Web Service Pada ERP Pondok Pesantren 30
No Nama Web Service URL WSDL
1 Web Service Kurikulum http://localhost/ws/_kurikulum_anik/mapel.php?wsdl
2 Web Service Kegiatan http://localhost/ws/_kegiatan_havit/kegiatan_services.php?wsdl
3 Web Service Akuntansi http://localhost/ws/_akuntansi_aziz/akuntansi.php?wsdl
4 Web Service Kepegawaian http://localhost/ws/_kepegawaian_ubhai/pegawai.php?wsdl
5 Web Service Kesantrian http://localhost/ws/_kesantrian_udin/santriParameter.php?wsdl
6 Web Service Keuangan http://localhost/ws/_keuangan_om/keuangan/keuangan_execute.php?wsdl
7 Web Service E-Document http://localhost/ws/_edocument_nurika/insert_bidang_jabatan.php?wsdl
8 Web Service Perencanaan Produksi http://localhost/ws/_pp_pipit/sipp.php?wsdl
9 Web Service Pengadaan http://localhost/ws/_pengadaan_dewi/pengadaan.php?wsdl
31. TAMPILAN DATA MESSAGE DAN OPERATION
Proses parsing mengambil elemen
portType, operation, dan message.
Hasil parsing elemen-elemen WSDL
ditampilkan seperti gambar disamping.
Data operation name diambil untuk
mendapatkan fungsi web service, dan
data message diambil untuk
mendapatkan tipe data output web
service.
31
32. TAMPILAN DATA FUNCTION
Data-data dalam tabel disamping
disusun dalam script PHP untuk
memanggil fungsi dan tipe data output
dalam generate WSDL baru.
32
34. CLUSTERING
Clustering web service menggunakan algoritma k-means dari nilai yang
diambil dari panjang vektor tiap dokumen.
Panjang vector didapatkan dari perhitungan bobot term menggunakan
tf/idf.
Custering web service berdasarkan tiga parameter, yaitu nama fungsi,
parameter input, dan tipe data output.
34
35. TAMPILAN HALAMAN WEB SERVICE ATOMIK
35
Halaman web service atomic
menampilkan data web service
atomik berupa nama dan URL
WSDL
36. Artinya : “Maka apabila kamu telah selesai (dari
sesuatu urusan), kerjakanlah dengan sungguh-
sungguh (urusan) yang lain.”
Q.S. Al-Insyirah : 7
36
37. Artinya : Demi masa (1) Sesungguhnya manusia itu benar-benar dalam
kerugian (2) kecuali orang-orang yang beriman dan mengerjakan amal
saleh dan nasehat menasehati supaya mentaati kebenaran dan nasehat
menasehati supaya menetapi kesabaran (3)
(Q.S. Al-‘Ashr : 1-3)
37
39. KESIMPULAN
1. WSDL dapat digunakan dalam proses dekomposisi untuk
membentuk web service atomik dengan memecah elemen operation
dan message melalui proses parsing dokumen WSDL.
2. Elemen operation dapat dipecah menjadi class dan function, elemen
mesageResponse mengandung tipe data output web service.
3. Generate WSDL atomik menggunakan function dan tipe data output.
4. Hasil dekomposisi dapat di cluster menggunakan algoritma k-means
clustering untuk mengetahui kemiripan secara fungsionalitas
berdasarkan fungsi, parameter input, dan tipe data output.
39
40. SARAN
1. Untuk pengembangan pembuatan web service, pemberian nama
fungsi hendaknya distandarkan agar data lebih mudah diolah dan
lebih mudah ketika dilakukan proses preprocessing.
2. Penelitian ini hendaknya dikembangkan lagi untuk proses discovery
dan komposisi agar hasillnya dapat dimanfaatkan secara maksimal.
3. Clustering yang telah dibuat perlu diuji kembali menggunakan
algoritma berbeda untuk menemukan hasil cluster yang paling sesuai.
40