EAI Testing | Kurumsal uygulama entegrasyonu testlerinde sorunlar

Uzunca bir aradan sonra tekrar merhabalar. Bu makalemde sizlere kurumsal uygulama entegrasyonu (EAI - Enterprise Application Integration) projelerinin testlerinde karÅ?ılaÅ?ılan sorunlardan bahsetmek istiyorum. Bu makalede yazanlar, evimden yüzlerce (bazen binlerce) kilometre uzakta, uzayan test projeleri süresince sıla hasreti katık edilerek derlenmiÅ?tir. Okurun yazıyı okurken, bu ruh halimi dikkate alacaÄ?ından hiç bir Å?üphem bulunmuyor.

Evet, müÅ?teriniz uzak diyarlara kendi yazılımını satmıÅ?tır. Uygulama diÄ?er birçok uygulama ile entegre çalıÅ?acak ama belki de önemli olan sizin müÅ?terinizin de sonunda yazılım ihracatçısı bir firma haline gelmesi. Entegrasyon ekibinin parçası olarak siz de projeye dahilsiniz. Biletiniz, vizeniz ve yeteri kadar çalıÅ?acaÄ?ınız ülkenin yerel parasından cebinizde var. gideceÄ?iniz ülke ile ilgili arkadaÅ?larınızdan ve Internet’ten bilgi de topladınız. Artık hazırız!

Hayır! Ã?ncelikle nasıl bir belaya bulaÅ?tıÄ?ınız hususunda bu yazıyı okuyun derim.

Kurumsal uygulama entegrasyonları genelde kendi paradoksu içerisinde tanımlanmıÅ? belirli paternleri kullanmaktadır. Söz konusu yeni paradigma, bazı sorunları ve zorlukları da beraberinde getirmektedir ne yazık ki.

Ã?ncelikle genelde entegrasyonlar mesaj tabanlı sistemler üzerinden gerçeklenmektedir. Bu sebeple genelde yakalanan hatalar entegre edilen uygulamalardan ziyade mesaj içerikleri, senkronizasyon ve muameleler (transaction) etrafında kümelenmektedir. EÄ?er bu noktada oluÅ?an hataları yakalayabilmek istiyorsanız, teknik açıdan yeterli ve sistemin mimarisine hakim olmalısınız. Ayrıca konvansiyonel test araçlarınız da bu noktada sizlere pek faydalı olmayacaktır. Alt sistemler tarafından üretilen mesajları simüle eden, yada alt sistem gibi mesajları dinleyecek araçlara ihtiyaç duyacaksınız. Bu araçlar XML, TCP/IP, Broker sistemler vb. birden fazla iletiÅ?im biçimini de destekleyebilmelidir. EÄ?er böyle bir projeye atandıysanız, ürün sorumlusundan, geliÅ?tirme ekibinin bu tür araçları sizin için üreteceÄ?i konusunda söz almakta fayda görüyorum.

Test aktivitelerinizi planlarken Å?unu aklınızdan çıkarmayın : EAI testi, güçlü bir geçerlileme süreci ile baÅ?lamalıdır. GeliÅ?tirme ekipleri, ürün sorumluları ve pazarlamacıların kafalarındaki kurumsal sistem, sizi temin ederim, birbirinden farklıdır. Bir kötü haber daha vereyim; bu insanların kafalarındaki sistemlerin hepsi, gerçek sistemden de farklıdır. Bu sebeple, her bir alt sistem öncelikle kendi içerisinde doÄ?rulanmalı, geçerlilenmeli ve kurumsal yapılanma içerisinde üstleneceÄ?i görevi tamamıyla yerine getirebileceÄ?inden emin olunmalıdır. Ayrıca mesajlaÅ?ma arabirimi üzerindeki deÄ?iÅ?ikliklerin yol açabileceÄ?i büyük sorunların engellenmesi için bu arabirim tasarımlarının da detaylı bir geçerlileme sürecinden geçirilmesini öneririm.

Ã?zellikle birden fazla sistem üzerinde oluÅ?an muamelelerde (transaction) oluÅ?abilecek hataların saptanması, güvenli bileÅ?enlere sahip olunmaması sonucu saatlerce süren takip ve iz sürme ile sonuçlanabilir. EAI projelerinde uçtan uca testler yürütmek kimi zaman sistemlerin uygunluÄ?u, kimi zaman kocaman sistemin teste hazırlıÄ?ı gibi nedenlerle neredeyse imkansızdır. Bu sebeple güvenli bileÅ?enler yaklaÅ?ımına sadık kalıp, testlere mümkün olan en erken safhada baÅ?lamak çok doÄ?ru bir karar olacaktır.

Ã?oÄ?u durumda, sistemi oluÅ?turan bileÅ?enler birbirinden farklı teknolojiler kullanılarak geliÅ?tirilmiÅ?tir (Buradan J2EE geliÅ?tiricilerine selam ederim ;)). Bu sebeple, teknolojiye özel hazırlanacak test durumlarını öngörmek, her zaman kolay olmayabilir. Proje öncesinde dersinizi çalıÅ?mayı unutmayın!

Mesaj zamanlayıcıları, eÅ? zamanlı olmayan mesajlaÅ?maları kullanan bir entegrasyon, her zaman test durumlarını hazırlamanız ve iÅ?letmeniz için 20 kat fazla vaktinize malolacaktır. Takım çantanızda Ethereal ve NetCat gibi bazı araçları bulundurmanız iyi olabilir.

Her ne kadar EAI projeleri karmaÅ?ık ve sorunlu da olsa, birkaç noktaya dikkat ederek daha yumuÅ?ak bir EAI test süreci yaÅ?ayabilirsiniz. Mesai saatinden sonra kan ter içinde ofiste sorun saptamak yada test planlamaktansa, bu noktalara dikkat ederek, en azından yerel biraların tadına bakacak vakti kendinize yaratın.

İyi Testler!

(Bu yazı ayrıca yazarın kendi blog sitesinde de yayınlanmaktadır)

Leave a Reply