Mantık merkezileştirme modeli - Logic centralization pattern

Mantık Merkezileştirme bir tasarım deseni, içinde uygulandı hizmet odaklılık tasarım paradigması, uygulaması agnostik mantığın yeniden kullanılabilirlik potansiyelini artırmayı amaçlayan [1] bu hizmetleri sağlayarak[2] fazladan agnostik mantık içermez ve herhangi bir yeniden kullanılabilir mantık yalnızca en uygun işlevsel bağlama sahip bir hizmet tarafından temsil edilmelidir.[3][4]

Gerekçe

Giderek daha fazla hizmet geliştirildikçe, yedekli işlevselliğe sahip hizmetlerin yaratılabileceği konusunda sürekli bir risk vardır. Uygulama olmasına rağmen Hizmet Normalleştirme tasarım modeli bu fazlalığı ortadan kaldırmaya yardımcı olur, ancak kendi başına bir dizi normalleştirilmiş hizmete sahip olmak, bunların başlangıçta öngörüldüğü gibi yeniden kullanılacağını garanti etmez. Agnostik hizmetler durumunda,[5] Bu sorun, bu tür hizmetlerin fiilen yeniden kullanımını ciddi şekilde kısıtlayabilir çünkü bir proje ekibi (Ekip A) mevcut bir hizmeti yeniden kullanmamaya karar verebilir, örn. karmaşık bir şemaya karşılık gelen verileri gerektirir ve bunun yerine işi yapan hafif bir hizmet geliştirir. Sonuç olarak, aynı yeniden kullanılabilir mantık artık iki farklı hizmetle mevcuttur, oysa mevcut hizmet, işlevselliğin en uygun çeşidini içermese bile geliştirilmiş olmalıdır. Bu etki, mevcut hizmet içinde işlevselliği bulmayı uman başka bir takımın (Ekip B), hizmetin sınırları gerekli işlevselliği kapsadığı için, onu bulamadığında ve bunun yerine A Takımı tarafından yeni oluşturulan hizmeti kullanmaya başladığında katlanarak artar. , orijinal agnostik hizmetin gerçek yeniden kullanılabilirliği düşer ve aynı zamanda Yönetim Orijinal ve yeni hizmetlerin bakımı söz konusu olduğunda sorun, çünkü artık yeniden kullanılabilir mantık merkezi olmayan bir şekilde var.

Belirli bir tür yeniden kullanılabilir çözüm mantığının yalnızca belirli bir agnostik hizmet tarafından çevrelenmesini sağlamak için, Mantık Merkezileştirme tasarım modeli, agnostik hizmetlerin doğru kullanımını zorlayan tasarım standartlarının oluşturulması gerektiğini belirtir. Bu, hizmet tüketicilerine, işlevselliğe doğru hizmet aracılığıyla eriştiklerine dair güven verir.[6]

Kullanım

Diyagram A
Diyagram A
Mevcut kırmızı hizmeti kullanmak yerine, Proje Ekibi 1, kısa vadeli gereksinimleriyle daha modernleştirilmiş yeni bir hizmet geliştirmek kolay olduğundan, yeni bir yedekli kırmızı hizmet oluşturmaya başvurdu.
Diyagram A
Diyagram A
Kuruluş çapında bir tasarım standardının varlığında, hizmet tüketicilerinin Proje Ekibi 2 tarafından oluşturulan yedekli kırmızı hizmete erişimi yasaklanır ve bunun yerine Proje Ekibi 1 tarafından oluşturulan mevcut kırmızı hizmeti kullanmak zorunda kalırlar. Benzer şekilde, Proje Ekibi 3 Proje Ekibi 3, Proje Ekibi 1 tarafından oluşturulan mevcut kırmızı hizmeti kullanır / geliştirir, bunun sonucunda işlevselliği mevcut kırmızı hizmete giren herhangi bir yeni hizmet oluşturmak yasaktır.

Bu tasarım modelinin uygulanması, belirli bir işlevsellik türünü, yani belirli bir işlevsel alan türüne giren işlevselliği temsil eden 'resmi uç noktaların' (hizmetler) ayarlanmasını gerektirir. Aynı işlevselliği sunabilecek diğer hizmetlere erişim yasaktır ve belirli bir işlev türü için yalnızca bir hizmet erişilebilir hale getirilir.[7] Diğer hizmetlere erişimi kısıtlayarak, artık mantık tek bir hizmette sınırlı olduğundan yönetişim yükü azaltılır. Halihazırda mevcut hizmetlerin hiçbiri tarafından sunulmayan yeni bir işlevsellik gerektiğinde, önce mevcut hizmetlerin işlevsel bağlamlarının kontrol edilmesi gerekir ve yeni işlevsellik halihazırda var olan bir hizmetin sınırlarının altına düşerse, o zaman bu hizmete eklenecek. Bu, mantığın merkezileştirilmesini sağlayan kurumsal çapta bir standart gerektirir. Hizmet geliştiricilerin hizmet sınırlarının farkında olduğundan emin olmak için Meta Veri Merkezileştirme[8] tasarım deseni uygulanabilir. Bu, işlevsel bağlamlar ve hizmetler tarafından sağlanan işlevsellik hakkında merkezi bir bilgi deposu oluşturmaya yardımcı olur. Sözleşme Merkezileştirme ile birlikte uygulandığında Mantık Merkezileştirme tasarım modeli[9] tasarım kalıbı, Resmi Uç Noktayı oluşturur[10] tasarım deseni. Mantık Merkezileştirme tasarım modelinin uygulanması, Hizmetin Yeniden Kullanılabilirliği ve Hizmet Birleştirilebilirliği Her hizmetin doğru türde yeniden kullanılabilir işlevselliği içermesini sağlayarak tasarım ilkeleri, böylece tekrar tekrar oluşturulabilir.

Düşünceler

Bu tasarım modelini uygulamak için, işletme genelindeki tüm proje ekiplerinin agnostik hizmetlerin doğru kullanımını anlaması ve kabul etmesi ve bir projenin yalnızca kısa vadeli gereksinimlerine hizmet eden yeni hizmetler oluşturmaması sağlanmalıdır. Bu, mevcut agnostik hizmetlerin kullanımı (ve bu modelin kurallarına göre bunları geliştirmek) daha fazla zaman ve çaba gerektireceğinden proje teslim sürelerini de etkileyebilir. Bunun nedeni, mevcut projedeki hizmetlerin, kendi tasarımları değiştirilene kadar agnostik hizmetlerden yararlanamayabilmeleridir.

Referanslar

  1. ^ Belirli bir iş sürecine ait olmayan ve dolayısıyla birden çok iş sürecini otomatikleştirmek için yeniden kullanılabilen mantık
  2. ^ "Hizmetler". Arşivlenen orijinal 2012-05-01 tarihinde. Alındı 2010-03-09.
  3. ^ Hizmet tarafından sağlanan işlevselliğin türü.
  4. ^ Kanu Tripathi.WS-AtomicTransaction Olmadan Hizmet İşlemi Yönetimi [Çevrimiçi]. Erişim tarihi: 25 Nisan 2010.
  5. ^ Agnostik mantık içeren hizmetler
  6. ^ Dennis Wisnosky.ABD Savunma Bakanlığı'ndaki İlkeler ve Örüntüler Arşivlendi 2010-09-20 Wayback Makinesi [Çevrimiçi]. Erişim tarihi: 25 Nisan 2010.
  7. ^ Matthew Dailey.Yazılım Mimarisi Tasarım Hizmeti Odaklı Mimariler (Bölüm II) Arşivlendi 2011-07-24 de Wayback Makinesi [Çevrimiçi]. Erişim tarihi: 25 Nisan 2010.
  8. ^ Meta Veri Merkezileştirme modeli
  9. ^ Sözleşme Merkezileştirme modeli
  10. ^ Resmi Uç nokta deseni

Dış bağlantılar