Apa itu Workflow ?

Tulisan ini dibuat sepertinya koq kembali ke hal mendasar, setelah membahas sangat jauh menyangkut Workflow Engine, Lotus Workflow, contoh aplikasi workflow, dsb. Alasannya adalah berdasarkan analisa, banyak sekali para netter yang masih membutuhkan penjelasan tentang apa itu workflow. Jadi tulisan ini memang membahas tentang hal mendasar dan ditujukan untuk yang membutuhkan informasi tentang apa itu workflow. Diharapkan setelah membaca tulisan ini, bisa dilanjutkan ke tulisan sebelumnya yang lebih advance tentang workflow seperti dalam tulisan berikut ini:

Apa itu Workflow Engine ?

Lotus Workflow – a Workflow Engine

Berikut obyektif yang akan dibahas dalam tulisan ini:

  1. Apa itu Workflow atau Aplikasi Workflow ?
  2. Apa perbedaan dari Aplikasi Workflow dengan Workflow Engine ?
  3. Contoh aplikasi Workflow

Apa itu Workflow atau Aplikasi Workflow ?

Workflow atau Aplikasi Workflow adalah sebuah software yang digunakan untuk menjalankan suatu proses bisnis secara elektronik, dimana didalamnya terdapat proses/fungsi menjalankan tugas-tugas ke bagian-bagian terkait untuk dikerjakan. Secara garis besar dalam workflow terdapat:

  1. Tugas atau tugas-tugas
  2. Fungsi menjalankan atau mendistribusikan tugas atau tugas-tugas
  3. Ke bagian-bagian terkait untuk dikerjakan/diselesaikan
  4. Mengikuti alur kerja atau bisnis proses yang sudah ditentukan sebelumnya

Apa itu tugas atau tugas-tugas ?

Tugas adalah pekerjaan yang akan diserahkan kepada bagian terkait untuk dikerjakan/diselesaikan mengikuti proses bisnis yang sudah ada. Tugas disini bisa berupa pekerjaan didalam aplikasi workflow itu sendiri atau berupa pekerjaan diluar sistem (di sistem lain atau pekerjaan manual). Contoh tugas-tugas yang ada didalam sebuah workflow Pengajuan Cuti:

  1. Pengisian formulir permohonan cuti
  2. Pengecekan sisa cuti
  3. Persetujuan permohonan cuti
  4. Pengecekan aturan cuti

Dari contoh diatas, tugas yang dilakukan di dalam aplikasi workflow Permohonan Cuti adalah tugas no 1 dan 3, dilakukan di sistem lain adalah tugas no. 2 dan dikerjakan secara manual adalah tugas no. 4.

Apa itu fungsi menjalankan atau mendistribusikan tugas atau tugas-tugas ?

Workflow adalah rangkaian tugas-tugas yang dilakukan untuk sebuah tujuan (proses bisnis) dan pada umumnya rangkaian pekerjaan ini melibatkan beberapa pihak. Nah karena melibatkan beberapa pihak, maka salah satu fungsi dari workflow adalah routing atau menjalankan atau mendistribusikan. Apa yang dijalankan ? Yaitu tugas-tugas. Kemana dijalankan ? Yaitu ke bagian-bagian terkait. Bagaimana cara menjalankan ? Yaitu melalui aplikasi atau secara elektronik. Yang dimaksud menjalankan disini ada 2 pengertian, yaitu:

  1. Menjalankan tugas: memindahkan tugas dari satu bagian ke bagian lain (berupa status dokumen yang berubah dan pemberian hak untuk mengerjakan tugas/memberi tanda kepada bagian yang mendapatkan tugas).
  2. Pemberitahuan tugas: bisa berupa email atau sms kepada penerima tugas

Apa itu Bagian-bagian terkait ?

Tugas dalam sebuah proses bisnis sudah diarahkan untuk dikerjakan oleh pihak tertentu sesuai dengan fungsi dan wewenang. Nah bagian disini adalah keterkaitan antara tugas dan fungsi routing yaitu siapa penerima tugas atau tanggungjawab ? Kenapa bagian terkait ini mendapat perhatian khusus dalam pembahasan workflow ? karena workflow yang baik sudah menyediakan alat bantu untuk mengatur mengarahkan kepada bagian-bagian ini secara fleksible. Yang dimaksud disini mudah dan flexible adalah workflow bisa membantu untuk mencari bagian berdasarkan beberapa hal secara otomatis, seperti struktur organisasi (untuk mendapatkan urutan atasan yang akan menyetujui), kepala dari unit kerja, role untuk melakukan sebuah fungsi. Tanpa ada komponen yang mengatur Bagian-bagian ini, maka aplikasi Workflow akan menjadi rumit.

Apa itu alur kerja ?

Alur kerja atau bisnis proses adalah proses keluruhan dari kaitan tugas-tugas untuk sebuah tujuan. Tujuan disini adalah berupa tujuan bisnis (seperti sales order, maintenance support), administrasi (pengajuan cuti, interview), pengontrolan (pembelian, expense claim).

Apa perbedaan dari Aplikasi Workflow dengan Workflow Engine ?

Mungkin beberapa belum pernah mendengar istilah Workflow Engine, tapi tidak apa-apa karena akan dijelaskan dibagian ini. Sebuah aplikasi worfklow, dengan arsitektur yang benar, akan memisahkan antara fungsi tugas dan alur kerja dengan komponen lainnya (routing – komponen ke 2 dan bagian – komponen ke 3). Fungsi tugas dan alur kerja adalah merupakan komponen spesifik terhadap sebuah aplikasi workflow. Komponen ini akan berbeda-beda untuk setiap aplikasi workflow. Berbeda dengan 2 komponen lainnya yaitu routing dan bagian, dimana komponen ini bisa dibuat baku karena fungsinya yang baku. Nah kedua komponen ini yang bisa disebut sebagai Workflow Engine.

Tapi dalam banyak kasus, tidak semua aplikasi workflow dapat dipisahkan secara jelas antara aplikasi workflow dan workflow engine. Untuk aplikasi yang demikian bisa dikategorikan sebagai aplikasi workflow yang jelek. Kenapa hal ini bisa disebutkan demikian silahkan baca artikel Workflow Engine. Dalam artikel tersebut dijelaskan secara mendalam tentang apa itu Workflow Engine, apa saja kegunaan dari Workflow Engine, komponen dalam Workflow Engine dan fitur yang disediakan oleh Workflow Engine.

Contoh aplikasi Workflow

Apa saja contoh aplikasi workflow ? Bisa berupa aplikasi apa saja dengan ruanglingkup sebagai berikut:

  1. Ada beberapa tugas, proses yang dikerjakan dalam aplikasi lebih dari 1 tugas, bukan hanya 1 tugas saja. Contoh yang hanya 1 tugas, pengentrian Jurnal Accounting, pengentrial hasil produksi, pengentrial penerimaan Invoice untuk dijadikan A/P. Contoh yang lebih dari 1 tugas, Jurnal Accounting membutuhkan persetujuan oleh unit kerja terkait dan fungsi untuk mengisi pembebanan cost center, Entry hasil produksi dengan persetujuan oleh bagian QC, Pencatatan A/P setelah mendapatkan persetujuan dari penerima barang. Jadi 1 buah bisnis proses bisa jadi sebuah aplikasi workflow atau tidak, tergantung dari proses bisnis-nya.
  2. Ada beberapa bagian terkait, 1 proses tapi melibatkan beberapa bagian. Keterlibatan ini bisa berupa alur proses atau hanya sekedar sebuah persetujuan.