Uygulama Modernizasyonu

menu icon

Uygulama Modernizasyonu

Uygulama modernizasyonunu, genel avantajlarını ve zorluklarını ve nasıl başlangıç yapacağınızı keşfedin.

Uygulama modernizasyonu nedir?

Uygulama modernizasyonu, mevcut eski uygulamaların alınarak bunların platform altyapılarının, iç mimarisinin ve/veya özelliklerinin modernize edilmesi sürecidir. Günümüzde uygulama modernizasyonu ile ilgili tartışmaların büyük bir kısmı, genellikle şelale geliştirme süreçleri kullanılarak güncellenen ve sürdürülen tek parça, şirket içi uygulamalar ve bu uygulamaların bulut mimarisine ve yayın kalıplarına, yani mikro hizmet DevOps uygulamalarına nasıl taşınabileceği üzerinde yoğunlaşıyor.

Uygulama modernizasyonunun avantajları, yeni özelliklerin teslim hızının iyileştirilmesi, diğer hizmetler tarafından API aracılığıyla tüketilecek mevcut uygulamaların işlevlerinin açığa çıkarılması ve uygulamaların uzun vadeli veri merkezi ve BT stratejisinin yanı sıra uygulama ölçeği ve performans amacıyla da şirket içi platformdan bulut platformuna taşınması olarak özetlenebilir.

Uygulama modernizasyonunun zorlukları genellikle maliyet ve karmaşıklığa indirgenebilir. Bir uygulamanın, yatırım getirisi düşünülmeden şirket içi ortamdan bulut ortamına taşınması, uygulamaların yalnızca taşımış olmak için taşındığı anlamına gelir. Buna karşılık, diğer uygulamalar, bu platform değişikliğinden ya da mimari değişiklikten önemli ölçüde yarar sağlayabilir; ancak, söz konusu uygulamalar mevcut sistemlere ve altyapıya öylesine bağlıdır ki modernizasyonun karmaşıklığı, sağlanan avantajdan daha ağır basabilir.

Başarının anahtarı çoğu durumda olduğu gibi uygulama modernizasyonunda da gelip stratejiye ve uygulama modernizasyon projelerinin seçimine dayanır. Bu projelerde bulut, hız, performans, ölçek, yeni özellik geliştirme vb. avantajlar, uygulamaya, iyileştirilmiş müşteri deneyimi ve yatırım getirisi açısından apaçık bir yol sunan avantajlardır.

IBM'in uygulama modernizasyon yolculuğunuzda size nasıl yardımcı olabileceğini keşfedin.

Eski uygulamaları neden modernize etmek gerekir?

Eski uygulamalar genellikle tek parça uygulamalardır. Tek parça uygulamaların modernleştirilmesini gerektiren iki özelliği vardır: güncelleştirilmeleri zordur ve ölçeklenmeleri zor ve pahalıdır.

Tek parça uygulamaları güncellemek mimari nedenlerden dolayı zordur. Bir uygulamanın bileşenlerinin tümü birlikte gönderildiği için, karmaşıklığın getirdiği ek yük ve entegrasyon zorlukları göz önüne alındığında, yeni özelliklerin eklenmesi zor ve maliyetli olur.

Benzer nedenlerden dolayı ölçeklenmeleri de zor ve masraflıdır. Bir uygulamanın tek bir bileşeni bile yük ve performans zorluklarıyla karşı karşıya kalsa, en çok güç gerektiren tek bileşenin ihtiyacını karşılamak için uygulamanın tamamının dikey olarak ölçeklenmesi gerekli hale gelebilir. Bu yaklaşım, önemli miktarda hesaplama gücünün boşa harcanmasına yol açar.

Bir uygulamanın modernleştirilerek daha çok bir mikro hizmet mimarisine dönüştürülmesi sonucunda bileşenler daha küçük ve gevşek olarak bağlanmış hale gelir ve birbirlerinden bağımsız olarak devreye alınabilir ve ölçeklenebilir. Bu yaklaşım kendine özgü birtakım zorluklar getirirken, modernizasyonun temel değeri büyük ölçüde bu yaklaşımda yatar.

Aşağıdaki videoda mikro hizmet mimarileri hakkında daha fazla bilgi bulunabilir:

What are Microservices (06:37)

Uygulama modernizasyonuna uygulama değerlendirmesiyle başlayın

Bütün uygulama modernizasyon projelerine başlarken izlenecek en önemli yol bir uygulama değerlendirmesidir. Bunun gibi hemen hemen her türlü dönüşüme başlamak için en belirgin yollardan biri neredeyse her zaman elinizdekilerin bir envanterini çıkarmaktır.

Listeyi hazırladıktan sonra bu uygulamaların tümünü kolaylık / zorluk ve modernleştirilmesi durumunda sağlanabilecek potansiyel değer artışı temelinde bir x ve y eksenli grafiğe yerleştirmeye başlayabilirsiniz. Ayrıca, "potansiyel" değeri, uygulamanın müşteri deneyimi ve kuruluşunuzun geleceği açısından taşıdığı kritik önem olarak da düşünebilirsiniz.

Bu yüksek değer ve az zahmet grafiğinin sağ üst bölgesine düşen uygulamalar, bir uygulama modernizasyon projesine başlamak için en açık, en tartışmasız adaylar olacaktır.

En çok dikkat gerektiren kararlar ise taşınması zor, yüksek değer sağlayan uygulamalarla ilgili olacaktır. Bunlar için ilk günden bir "ya hep ya hiç" stratejisi izlemek zorunlu değildir. Bu tür durumlarda bir yandan portföyünüze doğru bir yön verirken diğer yandan riski ve maliyeti düşürebilen uygulama modernizasyonu yaklaşımları vardır.

Uygulama modernizasyonu modelleri

Uygulama modernizasyonu konusunda, platformu, uygulamanın mimarisini ve bir uygulamanın işlevlerinin API aracılığıyla açığa çıkarılmasını içeren bir birleşimine odaklanan, bilinen birkaç yaklaşım vardır.

Tek parçadan mikro hizmetlere

En yaygın uygulama modernizasyonu modeli, tek parça bir uygulamanın yeniden yapılandırılmasını ve bir dizi küçük, gevşek olarak bağlanmış mikro hizmet şeklinde parçalanmasını içerir.

Tek parçadan mikro hizmet mimarisine

Yukarıdaki mikro hizmet mimarileri örneğinde, bir perakende uygulaması, tek, n katmanlı bir uygulama iken, her birinin kendi veritabanı ve veri modeli olan, uygulama içindeki tek tek hizmetlerin hepsinin mikro hizmetleri şeklinde parçalara ayrıldı.

Bu alandaki yaklaşımlardan biri "boğma modeli" (strangler pattern) olarak bilinir. Bu model tek parçanın bir seferde parçalara ayrılmasından çok uygulamanın yavaş yavaş sökülmesini, öncelikle en kolay ve en değerli parçaların çıkarılmasını içerir. Bu yaklaşım ilerledikçe, en sonunda tek parçadan geriye hiçbir şey kalmaz.

Bulut geçişi

Uygulamaların mikro hizmetler şeklinde yeniden yapılandırılması, başka bir platforma ya da anasisteme taşınması hemen her zaman modernizasyon sürecinin bir bölümüyle örtüşür. Uygulamaları önemli bir yeniden yazma olmaksızın sadece kaldırıp taşımak mümkün olsa da, çoğu zaman asıl değer sağlayan, bulut modellerinden daha iyi yararlanmak için uygulamanın genellikle konteynerlerden ve Kubernetes'ten de yararlanarak yeniden yapılandırılmasıdır.

Bulut geçişine ilişkin daha ayrıntılı bilgi için "Cloud Migration: An Essential Guide" adlı rehbere ve aşağıdaki videoya göz atın:

What is Cloud Migration (04:46)

API'ler aracılığıyla işlevleri açığa çıkarın

Son olarak, modernizasyon yaklaşımlarından bir başkası da uygulamayı olduğu yerde tutarak işlevlerini ya da verilerini API'ler aracılığıyla güvenli bir şekilde açığa çıkarmaktır. Geçişten çok büyük ölçüde entegrasyona dayanan bu yaklaşım, yeni, bulut tabanlı uygulamaların var olan sistem ve veri yeteneklerinden yararlanmasını sağlar.

Uygulama modernizasyonuna yönelik temel teknolojiler

Çoğu kuruluşun modernizasyon süreçlerini kolaylaştırabilen geniş bir teknoloji portföyü vardır.

Özel, hibrit ve çoklu bulut

Genel bulut her türlü modernizasyon stratejisinin önemli bir parçası olsa da özel, hibrit ve çoklu bulut stratejileri güvenlik, gecikme süresi ve mimari açılardan kritik önem taşır.

Bir kuruluşun veri merkezinden doğrudan doğruya genel buluta geçmeye hazır olmamasının sayısız nedeni olabilir ve diğer bulut modelleri, belirli iş yüklerinin kendi benzersiz özellikleri dolayısıyla yaşaması gereken yerle bağlantılı bütün mimari ve ilke karmaşıklığını çözmeye yardımcı olabilir.

Konteynerler ve Kubernetes

Konteynerler ve Kubernetes; sanal makinelerin karşısına yalnızca bulutta her amaca uygun bir hesaplama biçimi niteliği taşıyan bir rakip olarak değil, aynı zamanda hibrit bulut ve uygulama modernizasyonu stratejilerinin önemli bir etkinleştirici unsuru olarak ortaya çıktı.

Konteynerleştirme, bir uygulamanın masaüstü, bulut ya da şirket içi ortamlarda tutarlı bir şekilde çalışabilmesi için tutarlı ve basit bir paket halinde sunulabilmesini sağlar. Bu tür bir esneklik, buluta geçmeyi planlayan kuruluşlar için gerçek bir avantajdır.

Containerization explained (08:08)

Uygulama modernizasyonu ve IBM Cloud

Özellikle iş ve BT operasyonlarındaki otomasyon ihtiyacı arttıkça uygulama modernizasyonu da organizasyonunuzu ileriye taşımanın yalnızca bir bölümü haline gelir. Otomasyonun genişletilmesine yönelik bir girişim küçük, ölçülebilir düzeyde başarılı projelerle başlamalıdır; bu projeleri daha sonra diğer süreçler için ve kuruluşunuzun diğer bölümlerinde de ölçekleyebilir ve optimize edebilirsiniz.

IBM ile çalışmaya başladığınızda, her süreci daha akıllı hale getirerek inovasyonu hızlandırmaya yardımcı olmak için, önceden oluşturulmuş iş akışları da dahil olmak üzere, IBM Cloud Pak for Automation'un yapay zeka destekli otomasyon yeteneklerine erişebileceksiniz.

IBM Cloud ürün ve hizmet portföyü aynı zamanda kuruluşların iş süreçlerini ve eski uygulama varlıklarını Buluta taşımalarına yardımcı olmak için de tasarlanmıştır.

Bir sonraki adımı atın:

  • IBM karar ağacını kullanarak önce hangi uygulamaların modernleştirileceğini belirleyin.
  • Strateji, süreç veya yeteneklerle ilgili yardıma ihtiyacınız olduğunda ya da tam hizmet istediğinizde IBM'in uygulama modernizasyonunda size nasıl yardımcı olabileceğini keşfedin.
  • Her türlü bulutta çalışabilen, tamamı IBM Cloud Pak for Automation paketi içinde sunulan konteynerli ara katman yazılımlarını kullanmaya başlayın.
  • IBM Cloud for VMware Solutions çözümünü kullanarak mevcut VMware iş yüklerini genel bulut ortamına kolayca taşıyın.
  • IBM'in uygulama modernizasyonu hizmetlerinin yardımıyla sürekli dijital dönüşümünüzün bir parçası olarak uygulama modernizasyonu stratejilerinizi planlayın ve hayata geçirin.
  • Modernizasyonun nasıl hızlandırılacağı, geliştirici üretkenliğinin nasıl artırılacağı ve operasyonel verimlilik ve standardizasyonun nasıl geliştirileceğini öğrenmek için IBM Application Modernization Field Guide (Uygulama Modernizasyonu Alan Kılavuzu) adlı belgeyi edinin.
  • Dijital dönüşüme ilişkin aşamalı bir yaklaşıma olanak tanıyan IBM® WebSphere Hybrid Edition adlı blog gönderisine göz atın.
  • Bu HFS Research raporunda ele alınan otomasyon başarısının beş koşulunu (bağlantı IBM dışındadır) okuyun.

Bir IBM Cloud hesabıyla bugün başlangıç yapın.