My Experience with Windows Workflow Foundation

Aku pernah kerja di sebuah software house yang kebanyakan ngerjain project di bidang software yang ada hubungan dengan peralatan di lapangan, dan masalahnya selalu klasik, perubahan requirement, user minta yang aneh aneh, lost code di repository dan terakhir programmernya lagi "Autis Mode" dan kerjaannya cuma dia yang ngerti sehingga ga bisa di take over, dan berakhir dengan lebih lama di lapangan, bergadang2 lagi, autis2 lagi, dan banyak minum tolak angin + Heineken ( kalo lagi ga ada pengawas )

 Akhirnya pernah diadakan beberapa pembicaraan serius diantara kita mengenai software yang ideal, mulailah semua orang mencari2, mulai dari configurable software hingga penggunaan Dynamic DLL, atau COM, tapi dirasa rasa .. masih ada sesuatu yang kurang, yang kurang adalah bagaimana semua itu dirangkum dan ditentukan urutannya pada software, nah pada saat membaca bab awal WWF timbullah pencerahan, nah ini dia solusinya. dilanjutkan dengan bab bab selanjutnya...dan mulailah discourage, duh ternyata sulit juga. Saat mulai gundah, mulailah ngobrol2 dengan rekan2 . . . "gimana nih ada barang baru mungkin solusi, ... tapi susah euy", kebanyakan sih pada cuma nyengir doang, trus tertawa sambil bergumam "I dont know what you`re talking about", tapi ada seorang senior programmer yang memberikan masukan positif, dia berkata.. "Ini sih semua yang biasa gw lakukan dengan Design Pattern di C++,  cuma dikemas lebih rapi dan dikomersilin" ya mohon dimaafkan saja, karena dia blom baca bagian bahwa WWF itu bagian dari .NET Framework sehingga tidak ada biaya tambahan untuk menggunakan WWF, menurut dia WWF itu sudah sesuai dengan standard yang biasa dia anut, yaitu multithreading, dan gampang di bongkar pasang.

Mendengar encouraging seperti itu, jadi tertarik lagi buat nerusin baca, dan setelah mulai membaca2 lagi, ternyata yang bikin sulit adalah konsep pemrogramanku yang salah, karena saking mudahnya dunia dengan IDE yang bagus, pemrograman bagiku ( dulu ) adalah drag drop dan klik klik, jelas aja konsep workflow sulit untuk diterima pada awal awal, diiringin dengan membaca Head First Design Pattern mulailah terlihat bagaimana seharusnya menggunakan Workflow. berikut adalah pemahaman saya, tolong dikoreksi jika salah :

Workflow engine ( instance dari workflow ) adalah engine utama dari aplikasi, engine ini bertugas sebagai factory ( lihat:Factory Pattern ), dan ada juga Customer dari factory ini, yaitu aplikasi yang meminta sebuah aktivitas untuk dilakukan, Customer akan meminta sebuah aktivitas dan akan dijalankan di customer, namun sambil dipantau oleh workflow, sehingga saat terjadi crash pada sebuah aktivitas, workflow engine akan tetap berjalan karena engine dan aktivitas berjalan di thread yang berbeda. Customer dari workflow ini bisa berasal dari mana saja, host computer yang menjalankan workflow, komputer lain yang terhubung dengan workflow, hingga smart device, nah disinilah WCF ( Windows Communication Foundation ) masuk ke dalam peta, WCF dapat berfungsi sebagai jembatan agar sebuah activities dapat dilakukan pada customer, dan juga memungkinkan antar customer dapat berkomunikasi untuk sebuah aktivitas yang sama. Hal lainnya lagi adalah dengan domain business process terdapat di Workflow, domain User Interface dapat dibuat dengan sekreatif mungkin menggunakan WPF( Windows Presentation Foundation ).

Workflow memang menawarkan fasilitas yang menarik sekaligus berbeda dengan fasilitas fasilitas yang di tawarkan oleh .NET dulu, namun untuk sampai ke tahap produksi software, mungkin saya masih memerlukan penyelidikan lebih banyak agar bisa solid.

Share this post: | | | |
Published Wednesday, August 22, 2007 10:47 AM by De_Joker
Filed under:

Comments

# re: My Experience with Windows Workflow Foundation

Wednesday, August 22, 2007 12:01 PM by agung

Koreksi. Pada saat host memanggil workflow engine, maka workflow engine akan berjalan pada process yang sama dengan host pemanggilnya. Jadi, tidak di thread yang berbeda. Barulah instance dari workflow itu yang akan diksekusi secara asynchronous oleh wf engine pada thread yang berbeda.

Jika kita ingin membuat workflow berada pada process yang berbeda, maka perlu dibuatkan satu helper versi kita sendiri untuk memanage thread antara host dan workflow yang dipanggil.

# re: My Experience with Windows Workflow Foundation

Friday, August 24, 2007 7:17 AM by De_Joker

Thanks mas agung, untuk memperjelas mengenai threadingnya, aku sudah perbaiki di blog ku, thanks ya

Powered by Community Server (Commercial Edition), by Telligent Systems