Bağlantı Obje
Giriş
BPMN 2.0’de, bağlantı objeleri, bir süreç modelindeki farklı elemanlar arasındaki ilişkileri ve veri akışını tanımlamak için kullanılır. Aktiviteleri, eventleri ve gatewayleri bağlayarak süreç akışını yönlendirir veya veri ve mesajları iletir. Ana bağlantı objeleri sequence flows, message flows ve associationlardır.
Sequence Flow
Bir sequence flow bir süreçte aktivitelerin, eventlerin ve gatewaylerin hangi sırayla gerçekleştirileceğini tanımlar. Görevlerin bir adımdan diğerine mantıksal ilerleyişini gösterir.
Bu, görevlerin hangi sırayla yürütülmesi gerektiğini gösterir, ok başı ile biten düz bir çizgi olarak gösterilir. Koşullu veya varsayılan bir yol gösterebilir.
- Örnek: Bir sequence flow, “Başvuru Gönder” görevini “Başvuruyu İncele” görevine bağlayarak incelemenin gönderim sonrasında gerçekleştiğini belirtir.
- Sequence Flow Çeşitleri:
- Normal Sequence Flow: Aktiviteler arasındaki varsayılan akış.
- Conditional Sequence Flow: Belirli bir koşul sağlanırsa ilerleyen bir sequence flow (küçük bir elmas ile gösterilir).
- Default Sequence Flow: Koşullar karşılanmazsa kullanılan geri dönüş akışı (başlangıç noktasındaki çapraz çizgi ile gösterilir).
- Kullanım Durumu: Sequence flowları, sürecin adım adım ilerlemesini yönlendirmek, aktivitelerin belirli bir sırayla yürütülmesini sağlamak için kullanın.
Message Flow
Bir message flow, farklı katılımcılar veya süreçler arasındaki iletişimi temsil eder, tipik olarak farklı havuzların parçası olduklarında. Bu, bağımsız işleyebilecek süreçler arasındaki bilgi alışverişini göstermek için kullanılır.
Message flow bağlayıcısı, farklı havuzlar veya organizasyonel sınırlar, örneğin departmanlar arasındaki iletişimi gösterir. Aynı havuz içindeki eventleri veya aktiviteleri bağlamak için tasarlanmamıştır. Bu bağlayıcı, daire ile başlayan ve açık ok başı ile biten bir kesik çizgi ile gösterilir.
- Örnek: Bir message flow, bir havuzdaki “Fatura Gönder” görevini (tedarikçiyi temsil eder) diğer bir havuzdaki “Fatura Al” görevi ile bağlamaktadır (müşteriyi temsil eder), bu sayede fatura aralarında gönderilir.
- Kullanım Durumu: Farklı iş katılımcıları veya temsil edilen ayrı havuzlar arasındaki iletişimi göstermek için message flowları kullanın, örneğin, bir şirketin diğerine sipariş talebi göndermesi gibi.
Association
Bir association, artefaktları (data objeleri, text annotationlar ya da gruplar gibi) akış objeleriyle (aktiviteler, eventler, gatewayler) bağlayarak elemanlar arasındaki ilişkiyi anlamlandırır veya netleştirir. Associationlar, sürecin sırasını etkilemez ancak dokümantasyon ve ek detaylar için kullanılır.
Bu eleman, ok başı ve daire içermeyen kesik bir çizgi olarak gösterilir. Bir event, aktivite veya gateway ile bir artefaktı bağlamak için hizmet eder.
- Örnek: Bir association, “Rapor Oluştur” görevini “Rapor Dokümanı” (bir data objesi) ile bağlayarak bu görevin dokümanı ürettiğini belirtir.
- Association Türleri:
- Normal Association: Görevler gibi elemanları data objelerine veya annotationlara bağlar.
- Directional Association: Bir göreve veri akışını veya bir görevden veri akışını gösterir (ok ile belirtilir).
- Bi-Directional Association: Elemanlar arasında iki yönlü ilişkileri belirtir (çift ok başı ile gösterilir).
- Kullanım Durumu: Process flow’u etkilemeden, görevlere veya eventlere ek bilgi (örn. data objeleri, text annotationlar) eklemek istediğinizde associationlar kullanın.
Bağlantı Objeleri Hakkında Ana Noktalar
- Sequence Flow: Tek bir süreç içindeki görevlerin veya eventlerin sırasını tanımlar (tek bir havuz içinde). Faaliyetlerin, koşulların ve kararların akışını belirtmek için kullanılır.
- Message Flow: Farklı katılımcılar veya süreçler arasındaki iletişimi temsil eder (farklı havuzlar arasında). Süreçler bilgi alışverişi yaptığında veya başka bir süreci tetiklediğinde kullanılır.
- Association: Veri, dokümanlar veya annotationlar gibi ek bilgileri aktivitelere bağlar, bağlam veya açıklama sağlar ancak süreç akışını kontrol etmez.
Örnek
Müşteri siparişlerini yönetmek için bir süreci hayal edin:
- Sequence Flow: Sipariş alındıktan sonra sistem siparişi işler ve ardından teslimat için gönderir. Her adım (alma, işleme, teslim etme) sequence flowlar ile bağlanmıştır.
- Message Flow: Sipariş işlendiğinde, teslimatı yönetmek için bir dış sevkiyat şirketine bir mesaj gönderilir. Bu iletişim, iki yapı arasındaki bir message flow ile temsil edilir.
- Association: “Müşteri Siparişi” data objesi, “Siparişi Al” görevi ile ilişkilendirilerek bu görevin sipariş verileriyle ilgilendiğini belirtir.
Özet
- Sequence Flow: Tek bir süreç içindeki aktivitelerin sırasını yönetir.
- Message Flow: Farklı varlıklar veya havuzlar arasındaki iletişimi kolaylaştırır.
- Association: Veri veya annotationlar gibi artefaktları akış elemanlarına bağlayarak ek bağlam sağlar.
Bu bağlantı objeleri, görevlerin ve eventlerin nasıl bağlandığını, verilerin süreçlerde nasıl hareket ettiğini ve süreçlerin BPMN modelinde birbirleriyle nasıl etkileşime girdiğini tanımlamak için temeldir.