Pembuatan Event Log Pada Workflow Dengan Windows Workflow Foundation. Tool yang digunakan adalah ProM, Nitro, Visual Studio 2010, SQL Server 2008 Express, YAWL. Download file pendukung di https://copy.com/sL9SAzju40U7
Pembuatan Event Log Pada Workflow Dengan Windows Workflow Foundation
1. UJIAN AKHIR SEMESTER AUDIT PERANGKAT LUNAK
1
Pembuatan Event Log Proses Bisnis
Menggunakan Windows Workflow Foundation
Fadlika Dita Nurjanto, 5110100132
Jurusan Teknik Informatika
Fakultas Teknologi Informasi
Institut Teknologi Sepuluh Nopember
Proses bisnis yang ada pada dunia industri merupakan sebuah
kesatuan dari rangkaian aktivitas yang ada. Rangkaian aktivitas
ini membentuk sebuah prosedur operasional standar (Standart
Operational Procedure) yang bertujuan untuk mencapai tujuan
atau produk yang sesuai dengan standar industri. Dalam
implementasinya, proses bisnis ini menggunakan workflow
sebagai acuan dari bisnis proses yang ditetapkan oleh
perusahaan. Akan tetapi, pada pelaksanaannya terkadang proses
bisnis berbeda dari definisi proses bisnis sebelumnya. Process
mining merupakan sebuah pendekatan baru yang dapat
digunakan untuk mendukung dan meningkatakan efektivitas
dari proses bisnis yang ada. Dalam penelitian ini, simulasi proses
bisnis digunakan untuk membuktikan bahwa process mining
dapat dihasilkan dari event log dari workflow sebuah proses
bisnis. Event log inilah yang digunakan sebagai dasar dalam
process mining yang dapat dilakukan dengan berbagai metode,
salah satunya Alpha++.
Kata Kunci : Alpha++, Event Log, Process Mining, Workflow,
Windows Workflow Foudnation
I. LATAR BELAKANG
S
aat ini hampir seluruh perusahaan menjalankan proses
bisnisnya menggunakan dukungan sistem informasi
perusahaan. Dalam sebuah sistem informasi, ada banyak
proses bisnis yang saling terhubung satu sama lain.
Implementasi proses bisnis perusahaan dapat dilakukan
dengan menggunakan workflow yang tertanam pada aplikasi.
Workflow yang ada merepresentasikan alur kerja perusahaan,
sekaligus menjadi standar dari kinerja perusahaan.
Perusahaan yang memiliki definisi proses bisnis yang
sistematis akan dapat menjalankan bisnisnya dengan efektif
dan efisien. Walaupun perusahaan sudah mendefinisikan
proses bisnisnya dengan alur yang jelas, pada prakteknya,
eksekusi proses bisnis kemungkinan mengalami perbedaan
dibandingkan proses bisnis yang sudah didefinisikan
sebelumnya. Perbedaan ini dapat dianalisa dengan
menggunakan event log.
Event logs merupakan catatan history yang memuat
rangkaian aktivitas yang dilakukan pengguna sebuah sistem.
Event logs pada suatu aplikasi sistem informasi memuat
catatan proses bisnis yang terjadi dan jejak eksekusi pengguna
pada masing-masing proses bisnis. Jika event logs ini
digambarkan pada sebuah diagram proses maka akan terlihat
seperti spaggeti model. Model ini tidak mudah untuk dianalisis
karena tiap proses saling terkait satu dengan yang lain
sehingga menyulitkan jika akan melakukan analisa atau juga
perekayasaan ulang proses bisnis. Untuk itu, diperlukan
sebuah analisa lebih dalam pada proses bisnis tersebut
menggunakan process mining.
Process mining merupakan sebuah teknik yang dapat
digunakan untuk mendapatkan model sesungguhnya dari
proses yang terjadi pada sistem informasi berdasarkan data
yang berasal dari event logs. Model yang diperoleh dapat
digunakan untuk mengembangnak sistem atau juga sebagai
alat feedback yang membantu proses audit, analisa maupun
meningkatkan proses bisnis yang sudah ada. Inti dari process
mining adalah untuk mengektraksi informasi dari event logs
dan kemudian menggambarkannya ke dalam notasi grafik
untuk merepresentasikan proses bisnisnya. Manfat lain dari
teknik ini adalah mendapatkan informasi yang objektif karena
data yang digunakan untuk process mining berasal dari proses
bisnis yang benar-benar terjadi dalam organisasi, yang
didapatkan dari event logs, bukan berupa asumsi atau
pendapat orang tentang apa yang dikerjakan.
Process mining merupakan salah satu inovasi pada bidang
Business Process Management (BPM), yang mana pada
implementasinya menggunakan berbagai teknologi yang
beragam. Pendekatan metode dalam process mining semakin
berkembang. Ada sekitar 30 lebih metode yang dapat
dilakukan. Walaupun begitu, data awal yang dibutuhkan untuk
process mining adalah event logs. Untuk, itu makalah ini
bertujuan untuk melakukan analisa percobaan untuk membuat
event log secara otomatis dari proses bisnis yang sudah
berjalan
II. TINJAUAN PUSTAKA
A. Algoritma Alpha
Algoritma Alpha merupakan algoritma yang paling
sederhana dalam pencarian process mining. Algoritma Alpha
memanfaatkan task-task yang ada pada workflow untuk
kemudian dianalisa sehingga menghasilkan petri-net yang
merepresentasikan proses bisnis yang berhasil dianalisa.
Proses pada alogoritma Alpha didefinisikan sebagai berikut.
2. UJIAN AKHIR SEMESTER AUDIT PERANGKAT LUNAK
Kelebihan dari algoritma Alpha adalah kemudahannya
untuk dipahami dan diaplikasikan dalam process mining.
Algoritma Alpha menerima event log yang mengandung
rangkaian eksekusi suatu model proses sebagai input. Dari log
ini, algoritma Alpha mampu membuat kesimpulan dari urutan
dan hubungan antar kejadian.
Walaupun begitu, algoritma Alpha masih memiliki banyak
kekurangan, di mana algoritma Alpha tidak dapat mendeteksi
event log dengan tepat pada kondisi tertentu. Kondisi-kondisi
tersebut adalah (1) Length-one-loop, yang memungkinkan
aktivitas yang sama dieksekusi beberapa kali dalam satu
urutan, (2) Length-two-loop, yang memungkinkan terdapat 2
aktivitas yang berhubungan secara paralel sehingga tidak ada
state yang tercipta di antara keduanya, (3) Invisible Task, yang
mengakibatkan tidak adanya jejak event log, sehingga
aktivitas tersebut tidak ada dalam himpunan transisi dan tidak
dapat ditampilkan dalam net yang dihasilkan algoritma Alpha,
(4) Duplicate Task, di mana aktivitas terjadi lebih dari sekali
dalam aliran kerja yang sama, (5) Implicit Places, di mana
sebuah posisi dalam net dikatakan implisit apabila kehadiran
atau ketidakhadirannya tidak memberikan pengaruh kepada
kemungkinan jejak log sebuah aliran kerja, dan (6) Non-free
Choice, di mana algoritma Alpha tidak dapat menggali
informasi dengan benar karena net tersebut tidak dapat
menghasilkan log dengan tepat.
B. Alpha+
Algoritma Alpha+ merupakan pengembangan dari
algoritma Alpha, di mana algoritma ini menutup kekurangan
dari algoritma Alpha, yaitu pada permasalahan “short loops”
pada proses mining dan dapat digunakan untuk membentuk
seluruh “Structured Workflow Nets” dengam benar. Short
loops adalah perulangan pendek yang terjadi dalam suatu
workflow. Fenomena ini tidak dapat dideteksi oleh algoritma
Alpha. Ada 2 jenis short loop, yaitu length-one-loops dan
length-two-loops. Length-one-loops adalah suatu aktivitas
atau task yang dieksekusi berkali-kali secara berurutan.
Sedangkan Length-two-loops adalah perulangan aktivitas atau
task yang berulang tiap dua aktivitas. Pada algoritma Alpha+,
terdapat fase pre-processing dan post-processing. Metode yang
digunakan pada algoritma Alpha+ adalah sebagai berikut.
2
C. Algoritma Alpha++
Algoritma Alpha++ merupakan perbaikan dari algoritma
Alpha dan algoritma Alpha+. Algoritma Alpha++ mengatasi
permasalahan non-free-construct dan implicit dependencies
yang tidak dapat dideteksi oleh algoritma Alpha dan algoritma
Alpha+. Dalam implementasinya. Algoritma Alpha++
membutuhkan algoritma Alpha untuk membentuk model
workflow, untuk kemudian dianalisa apakah workflow
tersebut memiliki implicit dependencies atau tidak. Tahaptahap pada implementasi algoritma Alpha++ adalah sebagai
berikut:
3. UJIAN AKHIR SEMESTER AUDIT PERANGKAT LUNAK
3
D. Windows Workflow Foundation
Windows Workflow Foundation (WWF) merupakan
teknologi dari Microsoft yang menyediakan Application
Programming Interface (API), sebuah in-process workflow
engine dan rehostable designer untuk mengimplementasikan
workflow pada sebuah proses bisnis menggunakan aplikasi
berbasis .NET. Versi Windows Workflow Foundation yang
digunakan dalam makalah ini menggunakan versi 4 (WF4).
III. KONTRIBUSI
Melihat dari latar belakang di atas, kontribusi yang
diusulkan pada makalah ini adalah pembentukan event log
berdasarkan proses bisnis dari sisten yang dibangun
menggunakan teknologi Windows Workflow Foundation.
Sistem yang dicoba di sini menggunakan database SQL Server
2008 sebagai media penyimpanan data dan Workflow service
sebagai workflow yang digunakan pada proses bisnis. Proses
bisnis dijalankan dicatat pada event log yang disimpan pada
database, untuk kemudian dianalisa dengan menggunakan
algoritma Alpha++. Digunakannya algoritma Alpha++ adalah
untuk mendeteksi adanya shortloop maupun non-freeconstruct yang ada pada proses bisnis.
IV. HASIL U JI COBA
A. Skenario Uji Coba
Untuk mendapatkan event log sesuai dengan proses bisnis
yang ada, tahap-tahap yang dijalankan adalah (1) Pembuatan
Desain Workflow, (2) Pembuatan GUI aplikasi, (3) Mendesain
database, (4) Testing aplikasi, (5) Pencatatan Event Log (6)
Ekspor Format Event Log, (7) Analisa Event Log
menggunakan Alpha++.
1. Pembuatan Desain Workflow
Desain workflow awalnya dibuat menggunakan format
YAWL editor. YAWL Editor merupakan tool yang
digunakan untuk membuat workflow kerja dengan logic
yang mendeskripsikan alur proses bisnis yang ada.
Ada 2 jenis workflow yang digunakan dalam Windows
Workflow Foundation, yaitu Sequence Workflow dan State
Machine Workflow. Sequence Workflow merupakan
workflow yang urutannya dari atas ke bawah (top down),
sementara State Machine Workflow merupakan workflow
yang alurnya lebih fleksibel berdasarkan state activity
proses bisnis yang ada. Workflow yang digunakan di sini
adalah State Machine Workflow.
2. Pembuatan GUI Aplikasi
Aplikasi yang digunakan di sini menggunakan console
based, di mana input dan output notifikasi jalannya
workflow ditampilkan dalam Console User Interface.
Dalam pengembangannya, GUI dapat diterapkan
menggunakan beragam alternatif. Beberapa teknologi yang
dapat digunakan adalah Windows Form, Windows
Presentation Foundation (WPF), atau ASP.NET jika ingin
membangun workflow berbasis web.
3. Mendesain Database
Pada percobaan workflow database yang digunakan adalah
SQL Server 2008 Express, di mana database ini sudah terinclude di dalam paket Visual Studio 2010. Database di
sini digunakan untuk menyimpan eventlog yang dicatat
oleh aplikasi saat menjalankan workflow berdasarkan
variabel yang dimasukkan.
Workflow
tersebut
merepresentasikan
pengajuan
peminjaman dana usaha pada usaha tingkat kecil,
menengah, dan besar. Workflow tersebut dibedakan
berdasarkan identitas usaha sekaligus pemilik usaha
tersebut. Tahap berikutnya mendesain workflow net
menggunakan Windows Workflow Foundation dengan
Visual Studio 2010.
4. UJIAN AKHIR SEMESTER AUDIT PERANGKAT LUNAK
4
Masing-masing activity yang ada di dalam workflow
dikoneksikan dengan database. Di mana saat alur
workflow masuk pada sebuah state, maka secara otomatis
aplikasi akan mencatat sebuah event log berdasarkan
kondisi state tersebut. Misalkan state saat ini memiliki
TaskID “receive_application”, maka pencatatan di
database memiliki format (contoh) :
CaseID=1,
TaskID=”receive_application”,
Originator=”undefined”,
EventType=”complete”,
TimeStamp=”2013-06-16 23:07:46.180”,
Name=”Fadlika Dita Nurjanto”,
Amount=5000
5. Ekspor Format Event Log
Setelah aplikasi selesai melakukan pengetesan terhadap 48
case yang ada, langkah berikutnya adalah melakukan
ekspor data dari database SQL Server menjadi dataset
dalam format Comma Separated Value (CSV). Kemudian
file CSV diekspor menjadi file MXML menggunakan tool
Nitro. File MXML inilah yang digunakan dalam process
mining menggunakan tool ProM 5.2.
4. Testing Aplikasi
Pengetesan aplikasi dilakukan langsung dari Visual Studio,
di mana sebelumnya dipastikan bahwa database SQL
Server, Workflow, dan aplikasi client sudah terkoneksi
dengan benar. Pada percobaan kali ini case yang
digunakan berjumlah 48 case dengan variabel yang
berbeda. Saat aplikasi dijalankan, secara otomatis aplikasi
akan mencatat event log pada database. Daftar case yang
digunakan disediakan di lampiran.
Data event log pada SQL Server
Event log dengan format CSV
Eksport Eventlog Menggunakan Nitro
5. UJIAN AKHIR SEMESTER AUDIT PERANGKAT LUNAK
5
Memilih metode process mining
Event log dengan format MXML
6. Analisa Event Log menggunakan Alpha++
Setelah eventlog berhasil diekspor menjadi format MXML,
langkah berikutnya adalah melakukan process mining
dengan tujuan mengetahui model proses bisnis yang ada.
Process mining dilakukan dengan menggunakan metode
Alpha++, dimana sudah tersedia pluginnya pada ProM 5.2.
Model proses bisnis yang dihasilkan berbentuk petri-net
yang merepresentasikan task dan place yang dihubungkan
dengan garis panah yang merepresentasikan alur kerja
dalam sebuah proses bisnis.
Informasi eventlog saat berhasil di-load
Data eventlog
Hasil Petrinet dengan Alpha++
B. Hasil Uji Coba
Berdasarkan uji coba di atas, dihasilkan Petrinet yang
merepresentasikan proses bisnis yang berjalan. Petrinet yang
dihasilkan tidak sama persis dengan model yang dibuat pada
format YAWL di awal. Terdapat non-free-choice construct
yang terbentuk pada petrinet. Ini dikarenakan ada state yang
bersifat dependencies terhadap state yang lain. Algoritma
Alpha++ merupakan algoritma yang tepat digunakan untuk
mendeteksi non-free-choice construct yang ada pada
workflow. Walaupun petrinet yang dihasilkan tidak sama
persis dengan model YAWL, alur proses bisnis yang ada dapat
dideteksi dan dipahami dengan baik. Percobaan membuktikan
bahwa process mining dapat diaplikasikan pada dunia industri
dengan menggunakan teknologi yang sudah ada.
6. UJIAN AKHIR SEMESTER AUDIT PERANGKAT LUNAK
6
V. KESIMPULAN
Berdasarkan hasil percobaan, maka didapatkan beberapa
kesimpulan akhir dari makalah ini, yaitu :
a. Penerapan process mining dapat diintegrasikan dengan
teknologi yang sering digunakan dalam duni industri. Ini
membuktikan bahwa peluang diterapkannya process
mining pada dunia industri sangatlah besar.
b. Hasil model proses bisnis dari event logs cukup efektif
untuk digunakan sebagai pembanding apakah definisi
proses bisnsi perusahaan sudah diterapkan dengan baik
dan sesuai dengan keadaan pelaksanaan di lapangan.
c. Algoritma Alpha++ merupakan salah satu metode process
mining yang dapat digunakan secara efektif untuk
mendeteksi adanya non-free-choice construct pada proses
bisnis. Ini penting dalam memberikan rekomendasi pada
pemegang kebijakan dalam dunia industri untuk
membentuk sebuah proses bisnis yang lebih efektif.
REFERENSI (WAJIB DISERTAKAN)
[1]
[2]
[3]
[4]
[5]
A.Rozinat, M. T. Wynn, W. M. P var der Aalst, A. H. M. Ter Hofstede
and C. J. Fidge, “Workflow Simulation for Operational Decision
Support using YAWL and PROM”, Information Sytem Group
Eindhoven University of Technology, Business Process Management
Group Queensland University of Technology, submitted for publication.
A.K.A. de Medeiros, B.F. van Dongen, W.M.P. var der Aalst and
A.J.M.M. Weijters, “Process Mining Extending for α-algorithm to Mine
Short Loops”, Department of Technology Management Eindhoven
University Of Technology, submitted for publication.
Lijie Wen, W.M.P van der Aalst, Jianmin Wang, and Jiaguang Sun,
“Mining Process Models with Non-Free-Choice Construct”, School of
Software Tsinghua University,100084, Beijing,China, submitted for
publication.
Mark J.Collins, “WF-Windows Workflow in .NET 4.0. Master the
power of workflows unleashed in WF4”, New York : Apress, 2010.
Laeila Mardhatillah, Mahendrawathi Er, and Renny P Kusumawardani,
“Identifikasi Bottleneck pada Hasil Ekstraksi Proses Bisnis ERP dengan
Membandingkan Algoritma Alpha++ dan Heuristic Miner”, Jurusan
Sistem Informasi-Fakultas Teknologi Informasi-Institut Teknologi
Sepuluh Nopember, JURNAL TEKNIK ITS, vol 1, Sept. 2012.
7. UJIAN AKHIR SEMESTER AUDIT PERANGKAT LUNAK
7
Daftar Case Yang Digunakan
CaseID
Check_complete
Category
Gender
Check_sertificate
Sector
Status
1
TRUE
Small
Man
TRUE
Private
OK
2
TRUE
Small
Man
TRUE
Public
OK
3
TRUE
Small
Man
FALSE
Private
OK
4
TRUE
Small
Man
FALSE
Public
OK
5
TRUE
Small
Woman
TRUE
Private
OK
6
TRUE
Small
Woman
TRUE
Public
OK
7
TRUE
Small
Woman
FALSE
Private
OK
8
TRUE
Small
Woman
FALSE
Public
OK
9
TRUE
Medium
Man
TRUE
Private
OK
10
TRUE
Medium
Man
TRUE
Public
OK
11
TRUE
Medium
Man
FALSE
Private
OK
12
TRUE
Medium
Man
FALSE
Public
OK
13
TRUE
Medium
Woman
TRUE
Private
OK
14
TRUE
Medium
Woman
TRUE
Public
OK
15
TRUE
Medium
Woman
FALSE
Private
OK
16
TRUE
Medium
Woman
FALSE
Public
OK
17
TRUE
Large
Man
TRUE
Private
OK
18
TRUE
Large
Man
TRUE
Public
OK
19
TRUE
Large
Man
FALSE
Private
OK
20
TRUE
Large
Man
FALSE
Public
OK
21
TRUE
Large
Woman
TRUE
Private
OK
22
TRUE
Large
Woman
TRUE
Public
OK
23
TRUE
Large
Woman
FALSE
Private
OK
24
TRUE
Large
Woman
FALSE
Public
OK
25
FALSE
Small
Man
TRUE
Private
OK
26
FALSE
Small
Man
TRUE
Public
OK
27
FALSE
Small
Man
FALSE
Private
OK
28
FALSE
Small
Man
FALSE
Public
OK
29
FALSE
Small
Woman
TRUE
Private
OK
30
FALSE
Small
Woman
TRUE
Public
OK
31
FALSE
Small
Woman
FALSE
Private
OK
32
FALSE
Small
Woman
FALSE
Public
OK
33
FALSE
Medium
Man
TRUE
Private
OK
34
FALSE
Medium
Man
TRUE
Public
OK
35
FALSE
Medium
Man
FALSE
Private
OK
36
FALSE
Medium
Man
FALSE
Public
OK
37
FALSE
Medium
Woman
TRUE
Private
OK
38
FALSE
Medium
Woman
TRUE
Public
OK
39
FALSE
Medium
Woman
FALSE
Private
OK
40
FALSE
Medium
Woman
FALSE
Public
OK
41
FALSE
Large
Man
TRUE
Private
OK
42
FALSE
Large
Man
TRUE
Public
OK
43
FALSE
Large
Man
FALSE
Private
OK
44
FALSE
Large
Man
FALSE
Public
OK
45
FALSE
Large
Woman
TRUE
Private
OK
46
FALSE
Large
Woman
TRUE
Public
OK
47
FALSE
Large
Woman
FALSE
Private
OK
48
FALSE
Large
Woman
FALSE
Public
OK
8. UJIAN AKHIR SEMESTER AUDIT PERANGKAT LUNAK
Workflow Pada Windows Workflow Foundation 4
Hasil Petrinet Dengan Metode Alpha++
8