01Sorun ve çözüm
Yazılım mimarisi danışmanlığında ya yeni bir sistemin iskeletini kod yazılmadan önce birlikte tasarlıyoruz ya da çalışan bir sistemin mevcut yapısını inceleyip darboğazları ve riskleri ortaya koyuyoruz. Önerilerimizi gerekçeleri, alternatifleri ve bedelleriyle birlikte yazıya döküyoruz; ekibiniz kararın neden alındığını yıllar sonra da anlayabilir.
02Kimler için
Yazılım mimarisi danışmanlığına ihtiyaç duyan ekipler
Mimari görüş, genellikle büyük bir yatırımın öncesinde ya da sistemin sınırlarına dayandığı anda aranır.
- Yeni bir platform geliştirmeye başlamadan önce temel yapıyı doğru kurmak isteyen ürün ekipleri
- Monolitik uygulamasını parçalara ayırıp ayırmamaya karar vermeye çalışan yazılım şirketleri
- Birden fazla iç sistemi, pazaryeri ve mobil uygulamayı aynı veriyle besleyen işletmeler
- Şirket içi sunuculardan bulut altyapısına taşınmayı planlayan kurumlar
- Dış tedarikçinin önerdiği mimariyi teslim almadan önce bağımsız bir gözle değerlendirmek isteyen yöneticiler
03İhtiyaçlar
Mimari kararların geç fark edilen bedelleri
Aşağıdaki belirtiler, sorunun kodda değil yapıda olduğuna işaret eder.
- 01
Her değişikliğin her yere dokunması
Modüller arasında net sınırlar yoksa küçük bir iş kuralı değişikliği onlarca dosyayı etkiler. Ekip büyüdükçe aynı kod üzerinde çakışmalar artar ve sürüm hızı düşer.
- 02
Erken parçalanmış sistemler
Küçük bir ekip için kurulan çok sayıda mikroservis, ağ hataları, dağıtık veri tutarlılığı ve izleme yükü getirir. Ölçek sorunu olmadan alınan bu karar, çözdüğünden fazla sorun yaratabilir.
- 03
Tek veritabanına yığılan yük
Canlı işlemler, raporlar ve entegrasyonlar aynı veritabanını kullandığında yoğun saatlerde hepsi birden yavaşlar. Okuma ile yazma yükünü ayırmak çoğu zaman mimari bir karardır.
- 04
Noktadan noktaya entegrasyon ağı
Her sistemin diğerine doğrudan bağlandığı yapıda biri durduğunda zincirleme hatalar başlar. Kuyruk ya da olay temelli bir ara katman bu bağımlılığı gevşetebilir.
04Özellikler
Yazılım mimarisi danışmanlığı hizmetinin çıktıları
Çalışma, ekibinizin doğrudan uygulayabileceği belgelerle sonuçlanır.
- 01
Kalite hedeflerinin netleşmesi
Beklenen kullanıcı yükü, kabul edilebilir yanıt süresi, kesinti toleransı, veri saklama ve güvenlik gereksinimleri işlevsel isteklerden ayrı olarak yazılır. Mimari bu hedeflere göre seçilir.
- 02
Katmanlı mimari diyagramları
Sistem bağlamından servislere ve bileşenlere uzanan, C4 modeli gibi farklı yakınlık seviyelerinde okunabilen diyagramlar hazırlanır.
- 03
Mimari karar kayıtları
Veritabanı seçimi, servis sınırları, kimlik doğrulama yöntemi gibi her önemli karar; bağlamı, değerlendirilen alternatifler ve kabul edilen bedellerle kısa bir kayda dönüşür.
- 04
Mevcut sistem incelemesi ve yol haritası
Çalışan sistemlerde kod yapısı, bağımlılıklar ve altyapı incelenir; riskler önem sırasına göre listelenir ve sistemi durdurmadan uygulanabilecek adım adım bir geçiş planı önerilir.
05Entegrasyonlar
Mimari tasarımda ele aldığımız altyapı bileşenleri
Bileşen seçimini ekibinizin işletebileceği ölçüde tutmayı öneriyoruz.
- 01
Bulut sağlayıcıları
AWS, Azure veya Google Cloud üzerinde yönetilen veritabanı, kapsayıcı ve sunucusuz seçenekler; maliyet ve işletme yüküyle birlikte değerlendirilir.
- 02
Mesaj kuyrukları ve olay akışı
Sistemler arası bağımlılığı azaltmak için RabbitMQ, Apache Kafka ya da bulut sağlayıcısının kuyruk servisleri gibi seçenekler ihtiyaca göre önerilir.
- 03
Veri katmanı
PostgreSQL, SQL Server gibi ilişkisel veritabanları, önbellek için Redis ve raporlama için ayrı bir veri ambarı kullanımı yük profiline göre planlanır.
- 04
Kimlik ve yetki yönetimi
Keycloak ya da Microsoft Entra ID gibi kimlik sağlayıcılarla tek oturum açma ve rol bazlı yetkilendirme mimarinin parçası olarak tasarlanır.
06Süreç
Yazılım mimarisi danışmanlığı hizmeti nasıl ilerler?
Adım 01
Analiz
İş akışınızı, kullanıcılarınızı ve mevcut sistemlerinizi dinleriz; kapsamı, öncelikleri ve kabul ölçütlerini yazılı hâle getiririz.
Adım 02
Tasarım
Ekran akışlarını ve veri modelini çıkarırız. Arayüzü sizinle gözden geçirip onay almadan geliştirmeye geçmeyiz.
Adım 03
Geliştirme
Kısa döngülerle çalışırız; her döngü sonunda çalışan bir sürümü test ortamında görürsünüz.
Adım 04
Test
İşlevsel testler, entegrasyon testleri ve temel güvenlik kontrolleriyle hataları yayından önce yakalarız.
Adım 05
Yayın
Sunucu, alan adı, yedekleme ve izleme ayarlarını yaparak canlıya alırız; ekibinize kısa bir kullanım eğitimi veririz.
Adım 06
Bakım
İsterseniz bakım ve destek anlaşmasıyla güncellemeleri, izlemeyi ve yeni geliştirmeleri sürdürürüz.
07Teknoloji
Mimari önerilerde gözettiğimiz denge
Her mimari tercih bir şeyden vazgeçmek demektir. Mikroservisler bağımsız dağıtım sağlar ama izleme, veri tutarlılığı ve altyapı yükü getirir; modüler bir monolit daha sade işletilir ama ölçeklenme seçenekleri sınırlıdır. Bu yüzden önerimizi şirketinizin bugünkü ekip büyüklüğüne ve öngörülebilir büyümesine göre yapıyoruz. Küçük bir ekip için çoğu zaman iyi sınırlandırılmış modüllerden oluşan tek bir uygulama, ileride parçalanmaya hazır en sağlıklı başlangıçtır.
Devamını okuDaha az göster
Güvenlik ve kişisel veri koruma sonradan eklenecek katmanlar değildir. Hangi verinin nerede tutulacağı, şifrelemenin hangi noktalarda uygulanacağı, işlem kayıtlarının nasıl saklanacağı ve yedeklerden geri dönüşün nasıl sınanacağı tasarım aşamasında belirlenir. KVKK kapsamındaki veri için erişim sınırları ve saklama süreleri bu kararların doğal parçasıdır.
Mimari belge, ekip onu sahiplenmediğinde rafta kalır. Bu nedenle tasarım oturumlarını geliştiricilerinizle birlikte yürütüyor, kararları onların itirazlarıyla sınıyor ve uygulamanın ilk adımlarında kod incelemesiyle destek vermeyi öneriyoruz.
08Çalışma modelleri
Bu hizmette çalışma modelleri
09Sık sorulan sorular
Yazılım mimarisi danışmanlığı hakkında sık sorulan sorular
Yazılım mimarisi danışmanlığı fiyatları nasıl belirlenir?
Yeni bir tasarım mı yoksa mevcut sistem incelemesi mi yapılacağı, sistemin büyüklüğü, entegrasyon sayısı ve beklenen belge derinliği belirleyicidir. Çalışmayı saatlik ya da günlük danışmanlık olarak, tahmini kapsamı önceden paylaşarak planlıyoruz.
Mikroservise geçmemiz gerekiyor mu?
Tek başına bir hedef olarak gerekmez. Bağımsız ölçeklenmesi gereken parçalar, ayrı ekiplerin sahiplendiği alanlar ya da farklı sürüm ritimleri varsa anlamlı olabilir. Önce modüllerin sınırlarını netleştirmek, çoğu durumda daha düşük riskli bir ilk adımdır.
Mimari incelemede kodumuza erişmeniz gerekir mi?
Sağlıklı bir değerlendirme için salt okunur depo erişimi, altyapı şeması ve mümkünse izleme verilerine bakmamız gerekir. Gizlilik gerektiren durumlarda incelemeyi gizlilik sözleşmesiyle yürütüyoruz.
Yazılım mimarisi danışmanlığı firması olarak uygulamayı da yapıyor musunuz?
Danışmanlık çıktısı kendi ekibinizle ya da başka bir tedarikçiyle uygulanabilecek şekilde hazırlanır. İsterseniz uygulama aşamasında kod incelemesi ve teknik destekle sürece eşlik ediyoruz.
Sistemi durdurmadan mimariyi değiştirmek mümkün mü?
Çoğu durumda evet. Yeni yapı eskisinin yanında adım adım kurulur, trafik ve işlevler parça parça yeni bileşenlere taşınır. Bu yaklaşım daha uzun sürebilir ama tek seferlik büyük geçişin riskini taşımaz.
Çalışmanın sonunda hangi belgeler teslim edilir?
Kalite hedefleri, mimari diyagramlar, karar kayıtları ve varsa geçiş yol haritası. Belgeler ekibinizin düzenleyebileceği biçimde, kod deposunda ya da bilgi bankanızda saklanacak şekilde teslim edilir.
10İlgili hizmetler