MORIDUM
MOBEL’in Temel Taşı: MORIDUM Business State Machine
MOBEL ve ISODECK‘in başarısının temelinde MORIDUM İş Durum Makinası Yatar.
2012 yılında MOBEL projesinin geliştirme çalışmalarına başladığımızda ilk yaptığımız şey süreç altyapısına karar vermekti. Yabancı kaynaklı BPMN uygulama çatılarını incelediğimizde bu çatıların bizim oluşturmayı amaçladığımız yapıyı karşılamadığını gördük.
Bunun üzerine özel sektör süreç deneyimlerimizi de kullanarak, bütünüyle
yepyeni ve farklı prensiplere dayanan bir süreç uygulama çatısını, MORIDUM’u, TÜBİTAK AR-GE desteğiyle geliştirdik.
MORIDUM, süreçler ne kadar karmaşık olursa olsun kolaylıkla yönetebilmemizi sağlıyor. Kural tabanlı analiz yeteneğine sahip olan MORIDUM sadece yaşam döngüsü olan değil tüm uygulamalar için iş mantığını ana kod gövdesinden izole etmek noktasında en büyük yardımcımızdır.
Neden State Machine?
State Machine karmaşık yapıların kolay çözümlenmesinde diğer iş akış metodlarına göre çok daha elverişlidir. Bir iş analisti belki analizinin sonuçlarını bir BPMN diyagramı ile daha kolay ifade edebilir, ancak bu diyagram programcının kodlamaya geçmesi için yeterli değildir.
Programcı veya uygulama tasarımcısının bu diyagramı analiz etmesi ve diyagramda ifade edilememiş olan yüzlerce istisnayı yönetebilecek kodları geliştirmesi için yoğun çaba harcaması gerekecektir.
Oysa MORIDUM State Diyagramı hem süreç akışını hem de akışta oluşabilecek olan tüm istisnaları ifade edebilir. Diyagram hazır ise karar verme algoritmalarından soyutlanmış olan programcı hızlı bir şekilde sonuç alabilecektir.
MORIDUM ile İş Mantığı Kodların Dışında
MORIDUM’la programcı hiçbir şekilde iş mantığını kodlarının içinde barındırmaz. Sadece MORIDUM durum analiz sonuçlarını kullanarak arayüzü basit bir mantığa göre dinamik olarak örer. Bu şekilde uygulamaların nasıl çalıştığı hem geliştiriciler hem de analistler için açık ve anlaşılır hale gelir.
Her kurum için kopyalanarak çoğaltılmış, kirlenmiş ve bu nedenle bakımı yapılamaz hale gelmiş kodlarımız yok. Bunun yerine farklı kurumların farklı ihtiyaçlarını ana kod gövdesinden soyutlayabileceğimiz iş katmanımız MORIDUM var.
Özellikleri
- Java tabanlıdır
- Bağımsız (ayrı bir sunucu üzerinde) veya Java uygulamaları içinde yerleşik olarak kullanılabilir.
- Tüm veritabanı sistemleri ile kullanılabilir.
- İlave bir MVC uygulama çatısına ihtiyaç duymadan uygulama arayüzlerinin içeriğini yönetebilir.
- Yüksek performanslı ifade çözümleyicisi içerir. Harici değişken değerlerine optimum performans değerleri ile ulaşılabilir.
- Verilen kayıtların tümünde geçerli olacak operasyonları bulmak için bileşke analizi yapabilir.
- Web tabanlı tasarım editörü ile görsel olarak veya doğrudan XML dosyası üzerinde düzenlemeye imkân verir.
- Her an erişilebilen Analiz Kütüğü tutar.
- Süreç ilerleme kayıtlarını tutar, durum geçiş zamanlarında verileri dondurur.
MORIDUM’un Kapasitesi
Normal koşullarda bir modüle farklı müşterilerden yeni farklı istekler geldikçe karmaşıklık düzeyi sürekli artar ve kodlar içinde yüzlerce binlerce if () ile akış kontrol edilmeye çalışılır. Ancak bir yerden sonra artık iş çığırından çıkar ve hem tedarikçinin hem de müşterinin sorunları bitmez hale gelir.
Buna bir çözüm sağlamak üzere, sunulan süreç tabanlı çözümlerin ne kadar başarılı olduğu ve sağladığı fayda genellikle müşteri tarafından kolaylıkla anlaşılamaz. Kısıtlı bazı modüller üzerinde yapılan görsel sunumlar müşterileri yanıltabilir.
Verilen “çok kolay”, “çok basit” algısı yanıltıcıdır. Gerçek hayat, sunulan bu oyuncak süreçlerin çok ötesindedir. Yüzlerce istisnanın sorunsuz ve izlenebilir bir şekilde yönetilebilmesi gereklidir.
Buna karşın MORIDUM ile güçlendirilmiş MOBEL son derece farklı bir çözüm olarak karşımızdadır.
MORIDUM Business State Machine güçlü bir süreç kontrol aracıdır. Süreçlerin karmaşıklık düzeyi arttıkça MORIDUM un farkı daha da belirgin hale gelir.
Örneğin bu videoda kısaca İş Yeri Ruhsat Başvuru Sürecinin ne kadar kapsamlı olabileceği gösteriliyor.
Süreç 34 adet Durum, 128 adet Komut ve 229 adet Tanımlı Belgeyi yönetmektedir.