Modelleri etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Modelleri etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

10 Nisan 2013 Çarşamba

2 Katmanlı Mimari

2 Katmanlı Mimari

  • Uygulama yazılımlarının donanım üzerinde performanslı çalışabilmesi için 2 katmanlı mimari geliştirilmiştir.
  • 2 katmanlı mimari Client-Server yapısını baz alır ve yazılımlar bu yapıya uygun olarak hazırlanır.
  • 2 katlı mimaride yazılımlar.
  1. Uygulama yazılımları
  2. Veri tabanı

3 katmanlı Mimari


3 katmanlı Mimari

3 katmanlı mimari, bir istemci-sunucu mimarisidir. Adından da anlaşılacağı gibi 3 katmana sahiptir.

1. Sunum Katmanı (Presentation Layer)
2. Business Layer (İş Katmanı)
3. Data Layer (Veri Katmanı)

Sunum katmanı olan birinci katman, elde edilen verileri kullanıcıya göstermek için kullanılan bir yapıdır. Yani bunu bir arayüz olarak düşünebilirsiniz. İş katmanından verileri alıyor ve ekrana yazdırıyor.

İş katmanı ise, geçerlilik kontrolü, karar verme gibi işlemleri yapan katmandır.Aslında en çok işi yapan katman budur. Mesela, sunum katmanından gelen verilerin geçerli olup olmadığını kontrol ediyor olabilir.

Veri katmanı, veri tabanına erişimi olan katmandır. Veritabanında yapılabilicek olan yazma, silme, ekleme, değiştirme işlemlerini bu katman yapar. Bu katmana gelen parametreler, iş katmanından gönderilir.

İstemci bilgisayarlar

İstemci bilgisayar;

  • İstemci bilgisayar kullanıcılarının günlük hayatta kullandıkları bilgisayardır,
  • İstemcisi ve ram kapasitesi sınırlıdır.
  • Üzerinde bir çok uygulama çalışabilir
  • Performansı sahip oldugu kaynaklar kapasitesindedir.

Katman Mimarisi

Katman Mimarisi;

Katman mimarisi bilgisayarın üretimi ile ortaya çıkmıştır.Bizler yazılımları 3 Katmanı göz önüne alarak tasarlarız.
  1. Akılsız terminal katmanı
  2. Mini bilgisayar katmanı
  3. Ana bilgisayar katmanı

Spiral Modeli

Spiral Modeli;

Spiral yazılım modeli temel olarak 4 ana  bölüm içerir bunlar;
  • Planlama
  • Risk Yönetimi
  • Üretim
  • Kullanıcı değerlendirmeleri

Planlama;

Üretilecek ara ürün için işin planlanması,amaç ve altarnetilerin belirlenmesi bir önceki üretilen ürün ile tümleştirme planlaması faliyetlerini içerir.

Risk Yönetimi;

Altarnetifler değerlendirilir ve risk analizi yapılır.

Üretim;

Planlanmış ara ürünün geliştirildiği aşamadır.

Kullanıcı Değerlendirmesi;

Ara ürün hakkında kullanıcının test ve değerlendirmesi yapılır.

Şelale (Waterfall) Modeli


Şelale (Waterfall) Modeli;

Şelale yönteminde yazılım geliştirme süreci analiz, tasarım, kodlama, test, sürüm ve bakım gibi safhalardan oluşur.Her safha, baslangıç noktasında bir önceki safhanın ürettiklerini bulur. Kendi bünyesindeki değişikler doğrultusunda teslim aldıklarını bir sonraki safhanın kullanabileceği şekilde degiştirir.



Şelale modelinin özellikleri;

  • Şelalenin her basamağında yer alan aktiviteler eksiksiz olarak yerine getirilir. Bu bir sonraki basamağa geçmenin şartıdır.
  • Her safhanın sonunda bir doküman oluşturulur. Bu yüzden şelale modeli doküman güdümlüdür.
  • Yazılım süreci lineardir, yani bir sonraki safhaya geçebilmek için bir önceki safhada yer alan aktivitelerin tamamlanmış olması gerekir.
  • Kullanıcı katılımı baslangıç safhasında mümkündür. Kullanıcı gereksinimleri bu safhada tespit edilir ve detaylandırılır. Daha sonra gelen tasarım ve kodlama safhalarında müşteri ve kullanıcılar ile diyaloga girilmez.

Şelale (Waterfall) Modeli Problemleri;

  • Safhaların birbirinden kesin olarak ayrı tutulmaları gerçekci değildir. Projelerde safhalar arasındaki bu sınırlar yok olabilir.
  • Teoride safhalar birbirlerini takip edeler. Projelerde bunun bazen mümkün olmadığını ve önceki safhalara geri dönülmek zorunda kalındığını görebiliriz.
  • Safhalar arası geri dönüş yetersizdir. Model değişikliğe açık değildir.
  • Müşteri gerensinimlerinin proje öncesi detaylı olarak kağıt üzerinde oluşturulması ilerde sorun yaratabilir. Müşteri gereksinimleri değişikliğe uğrayabileceği için, yazılım sisteminin de yapısal değişikliğe uğraması kaçınılmaz olabilir. Böyle bir durum maliyeti artırır, çünkü yeni ve değişen gereksinimleri implemente edebilmek için modelde yer alan safhaların birkaç kere uygulanması gerekebilir.
  • Sistemin kullanılır hale gelmesi uzun zaman alabilir.
  • Baslangıçta yapılan hataların tespiti çok uzun zaman alabilir. Bu hataların giderilmesi maliyeti yükseltir.
  • Modül implementasyonları için zaman tahminleri proje planlarını oluşturan yöneticiler tarafından yapılır. Teknik bilgiye sahip olmayan şahıslar tarafından yapılan bu tahminler çoğu zaman dogru değildir. Bu durum proje planlama sürecini negatif etkiler.

Yazılım nedir?

Yazılım nedir?

Yazılım; tanımlanmış bir işlevi yerine getiren,girdi ve çıktıları olan herhangi bir donanım üzerinde çalışan bilgisayar programı yada program ürünlerine yazılım denir.

Yazılım süreçleri;

  • Müşterinin ihtiyacının anlaşılıp  belgelendirmesi işlemi
  • Yapılacak işlerin nasıl yapılması gerektiğinden ziyade nelerin yapılacağını belirleme
  • Ölçülebilirlik
  • Test edilebilirlik
  • Tanımlanmış ihtiyaçlara ve seçeneklerle ilişki.
  • Sistem tasarımı için yeterli detay
  • Sistem gereksinimleri ve müşteri gereksinimleri
Müşteri gereksinimleri; müşterinin sistemden beklentisini müşterinin anlayacağı bir dil ile ifade etmektir
Sitem gereksinimleri ise,sistemden neler beklendiğini geliştiricilerin anlayacağı bir dille ifade etmektir

sistem nedir?

Sistem kısaca amaçlanan bir işi yapmak üzere  birlikte çalışan bileşesenler kümesidir.

Yazılım geliştirme modelleri

Yazılım geliştirme modelleri;

Yazılım geliştirme ihtiyaçlarının  giderek büyümesi,yazılım geliştirme faliyetlerinde kullanılmak üzere metotların gelişiminide ortaya çıkarmıştır.

Uygun yazılım modellerinin kullanılması yazılımın;
  • Daha emniyetli
  • Doğru ve anlaşılabilir
  • Test edilebilir
  • Bakım yapılabilir
  • Daha kısa süre
  • Daha az bütçe
  • Daha az hata
olması yazılımın gelişmesinde önemli rol oynar.Bunun için sürekli yeni metotlar ve teknolojiler,modeller ortaya çıkmıştır.

Yazılım geliştirme modelleri;

  1. Şelale modeli
  2. Spiral model
  3. Artımlı geliştirme modeli
  4. Döngüsel model
  5. Evrimsel geliştirme modeli,

Modellemenin amacı

Modellemenin amacı

Yazılım modellemenin amacı;

Modelleme ile 4 amacı gerçekleştiriyoruz.
  1. Modeller geliştirdiğimiz sistemi görselleştirmede bize yardım eder.
  2. Modeller sistemin yapısal veya davranışsal yapısını belirtmeye izin verir.
  3. Modeller sistemi oluşturken kullanabileceğimiz şablonlar sağlar
  4. Modeller aldığımız kararı dökümante etmemizi sağlar.

Modelleme nedir?

Modelleme nedir?

Modeleme;

Modelleme yazılım organizasyonu  sağlayan bir bileşendir.
  • Modelleme gerçeğin basitleştirilmiş halidir.
  • Modelleme sistemin karmaşıklığını,Çözümlemede kullanılan en eski ve en etkili yöntemdir.
  • Bir sistem modellenirken farklı bakış açılarıyla defalarca incelenir.
  • Hiç bir model gerçek sistemin tamamını tümüyle içermez.
  • Modelleri geliştirdiğimiz sistemleri daha iyi anlayabilmemiz için oluşturuyoruz.
  • Bir model; yapısal veya davranışsal olabilir;
  • Yapısal modellemede sistemin organizasyonu vurgulanırken davranışsalda  sistemin dinamiği vurgulanır...

Model nedir?

Model nedir?

Model nedir?
Model gerçek dünyadaki bir olayın  veya sistemin soyutlanması,basitleştirilmesi veya kavramsallaştırılmasıdır.
  • Model gerçeğin maketidir.
  • Model Karmaşık yapıları daha iyi anlamamızı sağlar
Örneğin Bir evin gerçeğini göstermek yerine  maketini yani modelini yaparak o evi görebiliriz.