İçindekilerGirişİndex
YukarıİlkÖncekiSonrakiSon
Geriİleri
Yazdır

"THREE-TIER"IN AVANTAJLARI

Bu bölümde "three-tier" yapı

olarak ele alınmıştır.

Bir yazılım mimarisi her probleme uymaz. Farklı yaklaşımlar farklı alanlar için uygun olur. Bir mimari kendi alanına uygun olması ile değerlendirilir. Bu alanlar:

"Mainframe"’ler zamanında, mimari, donanım tarafından belirlenirdi. Bugün daha fazla seçenek var. Mimari, daha çok bilişim kuruluşlarının sorumluluğunda.

Bir "three-tier" mimari aşağıdaki kritik alanlarda önemli avantajlar sunar:

1. KONTROL

İstenen özellikler:

"three-tier" yapı orta-katmanı ile iş yönetimi için bir odak noktası oluşturur. Bu, uygulama için bir merkezi kontrol sağlar. Orta katmandaki sunucuda çalışan programlar, bilgi sistemlerinin kontrolü altında, güvenlidir. Bunlar test edilebilir, denetlenebilir.

İÇERİLEN HIZMETLER

Bu hizmetler, veri katmanı ile uygulama programları ( 1. Katman ile 3 .katman) arasında bir "firewall" olarak hizmet eder. Bu, her zaman uygulamanın güvenilirliğini arttırır. Eğer kullanıcı iş ortağında bulunuyor ise, "firewall" etkisi özellikle önem kazanır.

YAZILIM DAĞITIMI

İş mantığı, sunucu üzerinde olduğundan, yazılım dağıtımı kabusları en aza indirilmiştir. Uygulama sunucusundaki programları günlemek, binlerce kişisel bilgisayardakini gunlemekten çok daha kolaydır.

Kullanıcı arayüz kodu değiştiğinde, dağıtılması gerekmez. Uygulama sunucusu dağıtım noktası olarak kullanılabilir. "firewall" etkisi kişisel bilgisayarların dağıtım sorununu azaltır.

2. GÜVENİLİRLİK

İstenilen özellikler

Birçok sebepten dolayı (Ölçülebilirlik ve Performansta anlatılıyor), "three-tier" kullanıldığında, cevap zamanları daha tahmin edilebilirdir.

Bir uygulama sunucusu (donanım olarak), bir masaüstü makinasından daha güvenilirdir. Bu sadece makinalardaki işletim sistemlerinin zayıf ve güçlü yanlarından kaynaklanmaz. Aynı zamanda bir masaüstü makinesinin, bir firma yerine, tek bir kişi tarafından kullanılmasından kaynaklanır. Örnek: bir işlemin ortasında kişisel bilgisayarın güç kablosu üzerinde oturan birine karşı bir koruma olamaz. Şirketlerdeki uygulama sunucuları ise cam bölmelerde korunurlar.

Yazılım hata oranları "three-tier"da daha düşük olma eğilimindedir. 2. katmandaki hizmetler özel olarak hazırlanan test sürücüleri ile denetlenebilir.

"three-tier"da tasarım yaklaşımının modüler olması, yüksek güvenilirliğe sebep olur ve gerçekleştirimde karşılaşılabilecek sürprizleri önler.

3. ÖLÇÜLEBİLİRLİK, PERFORMANS

Bir prototip başarılı olunca ve yüzlerce kullanıcıya gönderilince ne olur? Geliştirilen ilk uygulama büyük bir başarı sağlayınca ve siz 3 tane daha benzer geliştirip, aynı ağda dağıtınca ne olur?

İstenilen özellikler:

Masaüstünde, "thin client" ve destekleyen yazılımların kullanımı ile performans artar. Bu, kişisel bilgisayarın birden fazla uygulama çalıştırırken bile iyi performans göstermesini sağlar.

Sunucu tarafında; performans, aşağıdaki sebeplere dayalı olarak, arttırılabilir:

Sunucu örnekleri sayısı kontrol edilebildiğinden ve yükleme dengelemesi sağlanabildiğinden, sunucunun aşırı yüklenmesi daha kolay engellenebilir. (Sunucu üzerindeki yük bilinir ve kullanıcılar, kontrolsüz olarak, sunucuya bağlandıkça artmaz.)

İlişkisel veritabanının etkin kullanımı şöyle arttırılır:

Ölçülebilirlik, iyi performansın ve aşağıdaki bazı etkilerin sonucudur:

4. ESNEKLİK, BÜYÜME, DEĞİŞİM

İstenilen özellikler:

Başarılı uygulamalar büyür ve değişir. Sistem ölçülebilirliğini daha önce anlatmıştık. Uygulama yazılmları açısından bakıldığında, tasarım ölçülebilirliği ve modülerlik anahtardır.

"three-tier" yaklaşımı modülerliği zorunlu olarak sağlar. Uygulama "three-tier" daki gibi bölümlenince, spagetti kod yazabilmek de zorlaşır.

Şimdi bir "three-tier" uygulamaya büyük bir altsistem eklenmesi gerektiğini düşünün. Altsistemi geliştirenler şöyle hareket edeceklerdir:

Bu aşamalar 3 katmanda da paralel olarak yürütülebilir.

Her katmandaki esnekliği inceleyelim:

MASAÜSTÜ İSTEMCİLERİ

Masaüstü donanım ve yazılımını değiştirirsek, tasarım, etkiyi en aza indirger. Sadece kullanıcı arayüzü değişir; iş mantığı hizmetleri ve veri hizmetleri değişmeden kalır. Eski ve yeni arayüzler birarada çalışabilir. Veri tabanı istemcilere şeffaf olduğundan, VTYS ile bütünleştirmede kaygımız olmaz.

Yeni uygulamalar geliştirip, bunları istemci tarafına kolayca bütünleştirdikçe; mimarimizin gücü açığa çıkar. 2. ve 3. katman hizmetleri ayrı ayrı geliştirilip test edilirler. Sonra seçilen 2. katman hizmetleri, uygun uygulamalarla bütünleştirilmek üzere, masaüstü istemcilere gönderilir.

UYGULAMA HİZMETLERİ

2. katman, 1. katmandan daha kararlıdır. İş kuralları, kullanıcı arayüzleri kadar hızlı değişmezler.

Eğer birşey değişirse, yeni bir içerilen hizmet, eskisinin yerini en az zararla alabilir. Yeni uygulama hizmetleri her zaman eklenebilir. Yeni uygulamalar varolan istemcilere yüklenebilir.

VERİ HIZMETLERI

Uygulama hizmetlerinde olduğu gibi, mimarinin modülerliği, veri hizmetlerinde de ekleme ve değiştirme kolaylığı sağlar. Ayrıca yeni bir VYTS'ne de adım adım geçebiliriz.

Bunların ötesinde, bütün veriler sadece bir ilişkisel veritabanında saklanmaz. "three-tier" mimaride, sunucu tamamen programlanabilirdir. Böylece;

bütünleştirebiliriz.

5. AÇIK, STANDART TABANLI

İstenilen özellikler

İSTEMCİLER

Masaüstü en hızlı değişimin yaşandığı yerdir. Yeni bir geliştirme aracı seçmek de öyledir.

HİZMETLER

Uygulama hizmetleri standart bir dilde (COBOL, C/C++) yazılabilir ve yazılmalıdır. Standart bir dile çeviren daha üst-düzey bir yaklaşım da kabul edilebilir.

Uygulamaya veri getirmek için, veri hizmetleri standart bir dilde yazılmalıdır. ANSI SQL ağırlıklı olarak, saklı yordamlar da çok gerektikçe kullanılmalıdır.

İçindekilerGirişİndex
YukarıİlkÖncekiSonrakiSon
Geriİleri
Yazdır