Açık Kaynak BPM Projelerini Karşılaştırma ve Karşıtlaştırma

Önce şunu belirtelim ki amiral ürünümüz ProcessMaker BPM aşağıda bahsedeceğimiz açık kaynak BPM projelerinden daha üstündür. Şimdi konumuza dönecek olursak; 2016 Açık Kaynak Anketine göre, şirketlerin % 65’i şu anda bu ürünleri kullanmakta ve projelere katkıda bulunmaktadır. Buna bir de Githubs’taki 38 milyon projeyi ve 15 milyon katılımcı / geliştiriciyi ekleyin ve bu yüksek katkının açık kaynak alanında bu büyük değişim oranına yol açtığını görebilirsiniz. Diğerleri mevcut açık kaynak projelerinden ayrılırken, sadece yeni projeler hızlandıracak bir trend her geçen gün yaratılıyor. Genişleyen açık kaynak projeleri listesi, birçok kapalı kaynaklı ürün için uygulanabilir alternatifler sunmaktadır. Bu açık kaynak trendinden etkilenen bir yazılım kategorisi İş Süreçleri Yönetimi (BPM) ‘dir.

BPM Ürünleri manüel işlemleri otomatikleştirmeye yöneliktir. Pek çok iş süreci, e-posta veya elektronik tablolar kullanmaya başlar ve artık yönetilebilir olmadığı anda büyür. Bazı örnekler, iş süreci birden çok departmanı kapsar veya iş akışı insan adımlarına ek olarak sistemle ilgili adımları içerdiğinde geçerlidir. Daha gelişmiş kullanım örnekleri, soruşturma gerektiren vaka yönetimi türü etkinlikleri ve yapılandırılmamış, dinamik türdeki iş akışlarını içerir. Vaka yönetimi cephesinde özellikle enteresan bir eğilim, pek çok endüstri ürününün aynı takımın bir parçası olarak vaka yönetimi ve iş süreci yönetimi yetenekleri sunmaya başlaması ve bunun yerine ayrı ürünler gerektirmesi. Bu eğilimin açık kaynak BPM ürünlerinde olduğunu görebilirsiniz.

Bir dizi açık kaynak BPM ürünü, kapalı kaynak BPM ürünlerine bir alternatif sağlayabilir. Bunların bazıları Activiti , Camunda ve jBPM’yi içerir. 2006 yılında kurulan jBPM, Activiti’nin jBPM’yi 2010’da forklayan ve Camunda’nın Activiti’yi 2012’de forklayan bu ürünlerden ilkiydi. Benzer şekilde, bu popüler açık kaynaklı BPM ürünleri arasında bir takım farklılıklar var. Bu farklılıkların bazıları şunları içerir:

  • Açık kaynak modeli (Topluluk ve İşletmeler arası)
  • Yetenek kümesi
  • Katkıda bulunan

Kısacası, bu konulardan her birine, açık kaynaklı BPM projelerinin karşılaştırmasını veya karşıtlığını kullanarak dokunalım.

Açık kaynak modeli (Topluluk ve İşletmeler arası)

Açık kaynaklı bir projeyi destekleyen her şirket kendi iş modeline sahiptir. Genellikle, açık kaynak yazılım üreten şirketler, kurumsal açık kaynaklı ürünleri gelir elde etmenin bir yolu olarak sunar – genelde topluluk sürümü ücretsiz iken kurumsal sürüm için ödeme yapmak zorunda kalırsınız. Camunda, Camunda’nın kurumsal sürümünü, Alfresco’nun Activiti’nin kurumsal sürümünü ve RedHat’ın jBPM’nin kurumsal sürümünü sağladığını ortaya koyuyor. “Şirket” tanımının her şirket için farklı olabileceğini fark ettim. Bir şirketin “kurumsal açık kaynak” ile ne anlama geldiğini anlamak için açık kaynak projesini kullanan ya da kullanan geliştiriciler için onunla çalışmadan önce çok önemlidir.

Bazı durumlarda, kurumsal sürüm açık kaynak değildir, ancak çoğunlukla açık kaynaklı projelerden oluşur ve rakip kapalı kaynaklı ürünlerden daha düşük bir fiyat noktası sağlar. Bu sürümün olası bir dezavantajı, koda katkıda bulunma yeteneğinizi kaybetmeniz ve kod değişikliği yapmak için destek veren şirkete güvenmenizdir.

Bazı durumlarda, şirketler topluluk sürümünde belirli bir yeteneği sağlayacak, ardından kurumsal sürümde ek özellikler sunacaklardır. Camunda ve Alfresco da bu yaklaşımı takip ediyor. Örneğin, Activiti ile kurumsal sürüm tam bir BPMN düzenleyicisine sahipken topluluk sürümünde ölçekli bir geri sürüm bulunur.

Bazı durumlarda şirketler, hem topluluk hem kurumsal sürümlerde aynı yeteneği sağlar, ancak tek fark kurumsal sürümle destek için ödeme yapmanızdır. Açık kaynak projesindeki şirket içi uzmanlığın derecesine bağlı olarak, destek istemeyebilir veya istemeyebilirsiniz. RedHat bu yaklaşımı jBPM ile takip eder. JBPM’nin kuruluş sürümü, bir dizi sertifika testi ile çalıştırılan topluluk sürümünün önceki bir sürümünü temel alır. Niye ya? Bazen topluluk sürümlerinde hatalar olabilecek deneysel özellikleri vardır; bu nedenle, eski sürümlerin çoğu kurumsal sürümler için kullanılıyor olmasıdır.

Yetenek seti

Activiti, Camunda ve jBPM’nin yeteneklerini araştıralım ve başlayalım.

1. Kural Motor

Diğerleri, yaygın olarak kullanılan kural motorları için entegrasyon / eklentiler sunarken bazı BPM ürünlerinin kendi kuralları motoru vardır. Droolsendüstride kullanılan yaygın bir kural motordur. jBPM, Drools’u projesine entegre ederken, Activiti ve Camunda farklı bir yaklaşım izliyor ve Drools’la bütünleşme sağlıyor. Her üçü de iş kuralının görevini iş akışının bir parçası olarak kullanmanızı sağlar; iş kuralı görevinin arkasındaki entegrasyon farklıdır. Drools, jBPM’ye özgü olduğundan, kuralları Ruleflow Grubu seviyesinde (kuralların gruplandırılması) modelde entegre edebilirken diğerleri kural düzeyinde bütünleştirebilirsiniz. Bu, Drools’un yerel özelliklerini kullanarak iş akışındaki belirli bir noktada yürütülecek belirli bir kurallar kümesi seçmenizi sağlar. Aynı sonuç Camunda ve Activiti ile başarılabilir, ancak jBPM, kutudan çıkma yeteneği sağlarken ek kodlama gerektirir.

2. Modelleme ve Uygulama Ortamı

BPM ürünleri genellikle, kullanıcıların süreç diyagramları oluşturmalarını sağlayan bir yazar / modelleme kullanıcı arabirimi sağlar. Bazıları, bir IDE’de çalışmayı tercih eden geliştiriciler için eklenti eklentileri sağlayacak. Çoğu BPM ürününün, kullanıcıların kendilerine atanan görevleri görüntülemesine ve işleyebilmesine olanak tanıyan bir yürütme kullanıcı arabirimi vardır. Camunda, dört ayrı kullanıcı arayüzünü (modelleme, görev listesi, süreç yönetimi ve izleme) sağlar. Bu, jBPM Workbench veya Activiti Modeler gibi geliştirme ve çalıştırma için tek bir web uygulaması sağlayan jBPM ve Activiti’den farklı bir yaklaşımdır. Camunda modeler UI ile ek bir fark, şu an sadece bir masaüstü uygulaması olarak mevcut.

3. Form Oluşturucu

Form oluşturucular, kullanıcıların işlemle ilgili kullanıcı arabirimi içindeki süreçle ilgili verileri görüntülemesine ve bunları eklemelerine / güncellemelerine kolay bir yol sağlar. jBPM, süreç değişkenlerinden otomatik olarak oluşturulabilen KIE Workbench (aynı UI, modelleme ve çalıştırmada daha önce belirtildiği gibi kullanılır) aracılığıyla temel bir form oluşturucu sağlar. Camunda, kullanıcıların kendi formlarını / UI’larını tercih ettikleri dilde oluşturmasını tercih ettikleri için bir form editörü olanağı sağlamıyor. Activiti bir form oluşturucu sağlar, ancak yalnızca kurumsal sürümde kullanılabilir.

4. Adaptörler

Günümüz yazılım endüstrisinde API’lerin önemi göz önüne alındığında, uygulamalardan REST çağrı yapma kabiliyeti önemlidir. Bu üç ürün de, REST API çağrıları yapma olanağı sağlar. jBPM, kutunun REST hizmet görevinin bir kısmını sağlarken, Camunda & Activiti, bir REST çağrısı (özel java sınıfları) uygulamak için ek geliştirme gerektirir. REST servis görevinin dışında kalmanın bir avantajı, özel gelişim gerektirmek yerine konfigürasyonda bulunması nedeniyle geliştirme süresini kısaltmasıdır. Bu, bir iş akışı içinde REST çağrıları eklemeyi kolaylaştırırken, dikkatle kullanın. Bir iş akışı içinde birçok REST çağrısı yapıyorsanız, performansı artırmak için bunları paralel olarak gerçekleştirmeyi değerlendirin.

Katkı sağlayanlar

Açık kaynak BPM projesinin kaynak koduna kim katkıda bulunur önemlidir. Aktif bir topluluk, bir projenin hala geliştirildiğini ve geliştirildiğini gösteriyor. Destek veren şirketin dışındaki katkıda bulunanların sayısı, bir projeye konan düşünce ve fikir çeşitliliğinin derecesine işaret etmeye de yardımcı olabilir. Open Hub, bu tür bilgileri aramak için kullanılabilen bir sitedir. Etkinlik, katılımcı sayısı ve taahhütler gibi ayrıntıları sağlar. Bunlar dikkate alınması gereken önemli faktörlerdir. Aşağıda, Camunda için bir Open Hub sayfası örneği verilmiştir:

Katkıda bulunanların listesini Activiti ve jBPM ve Camundasites’te de görebilirsiniz.

Özet

Bu yazıda, açık kaynak kodlu BPM projeleri Activiti, Camunda ve jBPM arasındaki bazı benzerlikler ve farklılıklar hakkında kısaca değindik. Her üçünün de yararları vardır ve projenizin özel ihtiyaçları hangisinin sizin için en doğru seçim olduğunu belirlemenize yardımcı olacaktır. İyi haber şu ki, her üçü kapalı kaynak BPM ürünleri için uygulanabilir açık kaynak alternatifleridir. Açık kaynak doğaları, zamanla değişmeye ve gelişmeye devam etmeleri anlamına geliyor.

Amiral Ürünümüz olan ProcessMaker BPM bu ürünlerden daha üstündür.

 

This post is also available in: İngilizce