İçeriğe geç
← İşler

Kurumsal dahili platform

Yalnızca SOAP konuşan bir kurumsal omurgayı, kayıt sistemini çoğaltmadan entegre etmek

15.000 danışmanlı bir ağ, eğitimleri satan, takip eden ve mutabakatını yapan bir portala ihtiyaç duyuyordu; üstelik yalnızca SOAP servisleri açan bir kurumsal platformun üzerinde. İki tarafı bağımsız değiştirilebilir kılan ara katmanı kurduk.

Dönem
2018 · 7 ay
Teslim ettiğimiz
SOAP-REST ara katmanı, eğitim kataloğu ve uygunluk, ticaret ve kayıt akışları
Çalışma ortamı
Entegrasyon ve ara katman teslimi

Müşteri ve proje adları gizlilik yükümlülüğü gereği paylaşılmıyor. Sektör, ölçek ve sonuçlar teslim edildiği hâliyle aktarılıyor.

~15.000

Yaklaşık 3.000 ofiste danışman

SOAP → REST

Yeniden kullanılabilir entegrasyon katmanı

Sıfır

Çoğaltılmış kayıt sistemi

Otomatik

Eşik tabanlı iptal ve toplu iade

Bağlam

Yaklaşık 3.000 ofis ve 15.000 danışmanla faaliyet gösteren ulusal bir gayrimenkul aracılık ağı. Kurum tüm operasyonel omurgasını (danışmanlar, ofisler, portföy, muhasebe) ısmarlama bir dotnet platformu olarak inşa ediyordu ve bunun parçası olarak bir dahili eğitim portalına ihtiyaç duyuyordu: zorunlu ve seçmeli hizmet içi eğitimlerin yayınlanabildiği, satılabildiği, takip edilebildiği ve mutabakatının yapılabildiği tek bir sistem. Portal yalnızca iç ağda, VPN üzerinden erişilebilir çalışıyordu.

Problem

Temel entegrasyon kısıtı: kurumsal platform yalnızca SOAP servisleri açıyordu, REST API yoktu. Web katmanından doğrudan entegrasyon kırılgan ve yavaş iterasyonlu olurdu; ayrıca portalın yayın döngüsünü kurumsal platformun şemasına bağlardı.

İkinci problem ticariydi. Eğitim oturumlarının uygunluk kuralları, kapasite sınırları, oturum başına iade pencereleri ve minimum yapılabilirlik eşikleri vardı; hepsi elle yürütülüyordu, bir oturum dolmadığında yapılan iadeler dahil.

Yaklaşım

İki tarafın da değişebilmesi için ara katman

Web portalını kurumsal omurgadan ayıran dedike bir dotnet core middleware servisi tasarlayıp kurduk; dahili platformu SOAP üzerinden tüketiyor, portala temiz bir REST API açıyordu. Bu, web uygulamasını kurumsal şema değişikliklerinden izole etti ve iki tarafın bağımsız evrilmesini sağladı.

Tüm ana veri ve finansal işlemler (kullanıcılar, şehirler, ofisler, ofis ve kullanıcı grupları, ödemeler, iadeler ve iptaller) ara katman üzerinden kurumun kendi altyapısına yönlendirildi; eğitim portalı çoğaltılmış kayıt sistemi verisinden arınmış kaldı.

RabbitMQ satın alma, iptal ve iade prosedürlerini asenkron işliyor ve bildirim hattını tetikliyordu; uzun süren kurumsal çağrılar istek yolunun dışında tutuldu.

Şifresiz kimlik doğrulama: kullanıcılar telefon numarası ve SMS ile gelen tek kullanımlık kodla giriyordu; 15.000 kullanıcılı dahili bir kitle için şifre yönetimi tamamen ortadan kalktı.

Birinci sınıf bir model olarak uygunluk

Eğitmen ve müfredat yönetimini kurduk: eğitmenler, verdikleri kurslar, oturum tarihleri ve süreleri. Ardından oturum başına yapılandırmayı ekledik: içerik, online/yüz yüze teslim biçimi, kapasite, fiyat ve çok boyutlu bir uygunluk modeli. Uygunluk şu boyutlarda tanımlanabiliyordu: belirli kullanıcı grupları, ad ad kişiler, coğrafi bölge veya şehir, belirli bir ofis, kıdem seviyesi ya da herkese açık.

Bu, kullanıcı başına katalog ve fiyat çözümlemesi üretti: her danışman yalnızca uygun olduğu oturumları, kendisine uygulanan fiyatla görüyordu. Yalnızca bir şehre açılmış bir oturum, başka yerdeki ofislere bağlı danışmanlar için basitçe görünmezdi.

Ticaret ve kayıt akışları

  • Online ödemeli kayıt; ayrıca ofis yöneticilerinin tek işlemde birden fazla danışmanı kaydettiği toplu satın alma.
  • Oturum dolduğunda otomatik kapanan dinamik kapasite yönetimi.
  • Oturum başına yapılandırılabilir iade pencereleri; iptal son tarihleri eğitim bazında ayrı ayrı belirleniyordu.
  • Bir minimum yapılabilirlik kural motoru: bir oturum, çalışmak için D tarihine kadar N kayıt gerektirebiliyordu ve eşik tutulmazsa sistem her satın alana otomatik iade yapıyordu.
  • Kurumsal sistemde kayıtlı olmayan dış konuklar için yönetici tarafından koltuk rezervasyonu.
  • Etkinlik sonrası katılım işaretleme ve aşağı akış raporlaması için JSON, XML ve tablo biçimlerinde katılımcı dışa aktarımı.
  • Her oturumun tarihinden türeyen, e-posta ve SMS üzerinden takvimli hatırlatmalar.
  • Portalın API’si üzerine Vue.js frontend olarak yönetim arayüzü: oturum ve eğitmen yönetimi, uygunluk yapılandırması, katılım işaretleme ve dışa aktarımlar.

Sonuç

  • 15.000 danışmanlı, 3.000 ofisli bir kurum için tam otomatik bir eğitim ticareti ve kayıt platformu teslim edildi; manuel kayıt, koltuk takibi, faturalama ve iade yönetiminin yerini aldı.
  • Eşik tabanlı otomatik iptal ve toplu iade ile yetersiz kayıtlı oturumlarda manuel iade mutabakatı ortadan kalktı.
  • Web portalı ile kurumsal arka ofis arasında gerçek zamanlı senkronizasyon sağlandı: kullanıcılar, ofisler, fiyatlama, ödemeler ve iadeler. Hem de çoğaltılmış kayıt sistemi olmadan.
  • Web uygulamasını kurumsal platformun arayüzünden izole eden, yeniden kullanılabilir bir SOAP-REST entegrasyon katmanı bırakıldı.