İş süreçlerini modellemek ve analiz etmek, işletmelerin etkinliklerini ve süreçlerini daha iyi anlamalarına ve iyileştirmeler yapmalarına yardımcı olur. Bu süreçleri modellemek için farklı yaklaşımlar kullanılabilir. İki yaygın yaklaşım BPMN (Business Process Model and Notation) ve State Machine’dir.
Bu makalede, BPMN ve State Machine yaklaşımlarının iş süreçlerini modellerken farklılıklarını ele alacağız.
1. Modelleme Dil ve Semantik
BPMN, genel olarak kullanılan bir iş süreci modelleme dili ve semantiğine sahiptir. İş süreçlerini görsel olarak ifade etmek için çizimler ve semboller kullanır. Bu semboller, süreçlerin akışını, karar noktalarını, görevleri ve katılımcıları temsil eder. State Machine ise bir durum tabanlı modelleme yaklaşımıdır ve durumlar, geçişler ve olaylarla birlikte modellenir.
2. İş Süreci Karmaşıklığı
BPMN, karmaşık iş süreçlerini modellemek için esneklik sağlar. Birden çok katılımcı, alt süreçler, döngüler ve koşullar gibi karmaşık yapıları destekler. State Machine ise daha basit iş süreçlerini modellemek için uygundur. Genellikle tek bir durumdan diğerine geçişleri temsil eder.
3. Süreç Akışı ve Kontrol
BPMN, süreç akışını göstermek ve kontrol etmek için olaylar, görevler, alt süreçler ve karar noktaları gibi öğeleri kullanır. Süreç akışı genellikle birbiri ardına gerçekleşen adımlarla temsil edilir. State Machine ise durumlar arasındaki geçişleri ve olayları temsil eder. Süreç akışı, belirli bir durumda olan süreçlerin nasıl değişebileceğini tanımlayan geçişlerle kontrol edilir.
4. Karar Noktaları ve Koşullar
BPMN, karar noktalarını ve koşulları modellemek için gateways (geçitler) adı verilen öğeleri kullanır. Geçitler, farklı yolların seçilmesini ve sürecin nasıl ilerleyeceğini belirlemeyi sağlar. State Machine ise durumlar arasındaki geçişleri kontrol etmek için koşullar kullanır. Durumlar arasındaki geçişler, belirli koşulların sağlanması durumunda gerçekleşir.
5. Geçmiş Durumlar ve Geri Alma
State Machine, geçmiş durumları tutarak geri alma işlemlerini destekler. Bu sayede, bir sürecin önceki durumuna geri dönme ve işlemleri geri alma imkanı sağlar. BPMN ise geçmiş durumları doğrudan desteklemez ve geri alma işlemleri daha karmaşık olabilir.
6. Uygulama Odaklılık
BPMN, iş süreçlerini modelledikten sonra bu modeli bir iş süreci yönetim sistemi üzerinde uygulamak için kullanılır. İş süreci yönetim sistemleri, süreçlerin otomatikleştirilmesi, izlenmesi ve yönetilmesini sağlar. State Machine ise daha çok programlamada durum tabanlı sistemleri modellemek için kullanılır.
7. İletişim ve Anlaşılabilirlik
BPMN, iş süreçlerini görsel olarak ifade ettiği için iş süreçleri paylaşımı ve anlaşılması için daha uygun olabilir. Sembol ve çizimlerin kullanılması, iş süreçlerinin daha kolay anlaşılmasını sağlar. State Machine ise daha teknik ve programlama odaklı bir yaklaşım olduğu için genellikle yazılım geliştiriciler arasında daha yaygın olarak kullanılır.
BPMN ve State Machine yaklaşımları, iş süreçlerini farklı perspektiflerden modellemek için kullanılan etkili araçlardır. Hangi yaklaşımın tercih edileceği, iş sürecinin karmaşıklığına, gereksinimlere ve uygulama alanına bağlı olarak değişebilir. İş süreçlerini modellemek için en uygun yaklaşım, işletmenin ihtiyaçlarına en iyi şekilde cevap verebilen yöntemdir.
BPMN daha çok pozitif akışı ifade eder, istisnaları yönetmek önceliği değildir. State Machine de ise tüm istisnalar, iptaller, geri dönmeler daha kolay ifade edilebilir.
BPMN, genellikle pozitif iş süreçlerini ve standart akışları ifade etmek için kullanılırken, State Machine daha esnek bir yapıya sahiptir ve istisnaları, iptalleri ve geri dönmeleri daha kolay ifade etme imkanı sunar.
BPMN’de, iş sürecinin olumlu akışı, adımların ardışık olarak gerçekleştirildiği ve belirli bir sonuca ulaşılmasının hedeflendiği şekilde modelledir. İstisnalar veya alternatif akışlar genellikle gateway’ler aracılığıyla ifade edilir, ancak bu daha karmaşık ve zor olabilir. BPMN, tipik iş süreçlerinin genel bir görünümünü sunmak için idealdir ve genellikle iş süreçlerini yönetmek için kullanılan araçlara entegre edilir.
State Machine ise daha genel ve kapsamlı bir yaklaşım sunar. Durumlar, geçişler ve olaylar aracılığıyla iş sürecinin tüm aşamalarını ve olası senaryolarını daha ayrıntılı bir şekilde modellemek için kullanılır.
Bu nedenle, istisnaları, iptalleri ve geri dönmeleri ifade etmek State Machine ile daha kolaydır. Durum tabanlı bir yaklaşım olduğu için belirli durumlarda geri dönme veya farklı bir akışa geçme gibi işlemler daha doğal ve kolaydır.
Moridum State Machine
MORIDUM, Mor Yazılım tarafından 2015 yılında Tübitak TEYDEP ARGE desteği ile geliştirilmiş olan State Machine tabanlı bir Süreç Kontrol Çatısıdır.
Moridum projesi kapsamında yapılan ARGE çalışmaları sırasında yeni kavramlar geliştirilmiş ve standart State Machine kapsamı genişletilmiştir.
State, Operation, Transition, Guard a ilave olarak Mode, Role, Document artefack ları getirilmiştir. Moridum State Machine bu nedenle belge yönetimini doğrudan süreç kontrolüne verebilmiştir.
Belge bazlı süreç akışı
Bugün pek çok süreç akış çözümünde, bir akışın amacının tek bir belgeyi oluşturmak olduğunu görmekteyiz. Eğer ikinci bir belge söz konusu ise ikinci bir akışa ihtiyaç olur.
Oysa bir Moridum süreci çok sayıda belge türünü yönetebilir ve bu gerçek hayata daha uygundur.
İstisnalar
State Machine ler yapısı gereği İstisnaları çok daha kolay yönetirler. Bizim BPMN yerine State Machine seçmemizdeki en önemli neden de aslında buydu.
Ülkemizde hayata geçirilen iş süreçlerinde istisna yönetimi yapmak, kültürel eğilimlerin muhtemel etkisi ile, pozitif akış kurgusundan çok daha fazla çaba gerektirir.
MORIDUM, ISODECK in dinamizmine ve esnekliğine önemli katkı sağlamıştır.