Pazar, 20 May 2012
You are here: Anasayfa AVAKOZA KKP Avax Avax Framework
Avax Framework
Kullanıcı Değerlendirmesi: / 0
ZayıfEn iyi 
Avax
Kenan Berkdemir tarafından yazıldı.   

AVAX FRAMEWORK / İş Uygulaması Geliştirme Stüdyosu

FRAMEWORK Nedir?

Geleneksel yazılım geliştirme süreçlerinde, yazılım firmaları ve kurumların yazılım grupları sağlıklı proje geliştirmek için ürettikleri nesneleri ve bileşenleri bir kütüphanede tutarlar. Ve bu çalışmalar yazılım geliştiricilere büyük kolaylıklar sağlar. Ama diğer yandan geliştirdikleri nesne ve bileşenler için tepe bir mimari model ve metodoloji bulunmaz. Her nesne ve bileşen sadece bir fonksiyon gibi algılanır ve bu fonksiyonlar kodlama esnasında iş tekrarını engellemek için kullanılır.

 AVAX

 

Oysa bir framework’ün ufku kütüphane fonksiyonlarından çok daha geniştir. Sadece kullanım kolaylığı için geliştirilmez. Aynı zamanda projenin başı, ortası ve sonu arasındaki temel tutarlılığı korur, projenin iş bütünlüğünü sağlar ve temel işlevleri standart hale getirir.

Bir framework temelde, nesne ve bileşenlerin bir mimari model çatısı altında ve belirli bir metodolojiyle bir araya getirilmesi ile kurulur.

Neden AVAX?

  1. Geliştirmede ve uygulamanın kullanımında standardizasyon sağlar.
  2. Kompleks teknolojilerle çalışmayı basitleştirir.
  3. Tekrar eden işleri azaltır ve bazen de yok eder.
  4. Nesne parçalarının yeniden kullanımına imkan sağlar.
  5. Uygulama geliştirmede çeviklik kazandırır.
  6. Genel modele uymaya zorlar.
  7. Ayrık nesne demetlerini daha kullanışlı bir nesnenin içinde birleştirir.
  8. Yazılım geliştirme ekibini “uyumlu kodlamaya”, “daha az hata yapmaya” ve “daha esnek uygulama geliştirmeye” zorlar.
  9. Yazılım geliştirme ekibindeki her üye, yazdığı kodu daha kolay debug eder, test eder, ve hatta yazmadığı kodu bile kolayca anlar.
  10. Geliştirme sonrası bakım operasyonlarını kolaylaştırır ve hızlandırır. Maliyetleri de düşürür.
  11. Uygulamaya yeni bir “genel” özellik eklenmek istendiğinde, işimizi basitleştirir.
  12. Toplam uygulama geliştirme kültürü getirir…

 AVAX FrameWork’ünde Hedeflenen Özellikler

  • Kolay ve Hızlı Proje Geliştirme
  • Aynı Geliştirme Ortamında Birden Fazla Proje Geliştirebilme
  • Proje Bazlı Kullanıcı Yetkilendirme
  • Performans
  • Ölçeklenebilirlik
  • Internet ve C/S Ortamında Çalışabilme
  • Veritabanı Bağımsızlığı
  • Esnek Runtime Yetkilendirme
  • Çoklu Dil Desteği
  • Veri Loglama
  • Test Yönetimi
  • Özelleştirilebilir Raporlama
  • Kullanıcı Dostu ve Standart Arayüzler
  • Hızlı ve Sorunsuz Güncelleme
  • Farklı Yazılımlarla Kolay ve Etkin Entegrasyon

 

AVAX’ın tasarım ve geliştirme ortamı 4 ana yapıdan oluşur.

1)    Entity Tasarımı

a)  UDDT (Kullanıcı tanımlı veri tipleri)

b)  Template Entity

c)  Proje Bazında Ortak Alan Havuzu

d)  Entity üzerinde PK, FK ve INDEX oluşturma

e)  Kaydetme anında çalışma projesine nesne olarak atılması ve uygulama veritabanında oluşturulması

2)    Servis Tasarımı

a)    Fonksiyon Servisleri

b)    Ekran Veri Servisleri

c)    Ağaç şeklinde Dataset tanımlayabilme (Düğümleri RecordSet)

d)    Her RecordSet için bir entity belirtilmelidir

e)    Her RecordSet için kayıt sayısı belirtebilme(1 ya da n)

f)     Her RecordSet için statik/dinamik filtre tanıtabilme.

g)    Her RecordSet için Kayıt ekleme,silme,güncelleme yetkisi

h)    Alanlara foreignkey, maske, liste, görüntü formatı belirleyebilme

3)    Ekran Tasarımı

a)    Servis tasarımında tanıtılan «Ekran Veri Servisi» için UI oluşturulur

b)    User Interface .xaml dosyası olarak tutulur.

c)    AVAX FRAMEWORK araçları ile kolay ve hızlı ekran tasarımı

d)    Sürükle, bırak ile kontroller oluşturulması

e)    Çoklu seçim ile kontrollerin hizalanması

f)     Özellik penceresi

g)    Ekran sihirbazı

h)    Menü tasarım aracı ile ekranların menülere bağlanması. Uygulama esnasında menü yeniden düzenlenebilir özelliği

4)    Proje Generate (Tasarımların Projeye Atılması)

a)    Ekran tasarımında hazırlanan .xaml dosyası istenilen herhangi bir dilde, çalışılan projeye «Generate» edilir.

b)    Oluşan ekrandaki kontroller, generate edilen dile uyumlu Framework kontrollerimizdir.

c)    Bu kontroller çalışma anında DAL(Data Access Layer) ile entegre çalışır

d)    Şu anda Silverlight ortamına generate edilmektedir. DAL katmanı da WCF/IIS yapısı ile çalışmaktadır.

e)    Modelimiz, Generate edilen ortam ile DAL katmanında yapılacak değişiklikler ile client/server ortamında da çalışabilecek durumdadır.

f)     Partial Class yapısı ile projeye ilaveler yapılabilir. Böylece sonraki «Generate» işlemlerinde ezilme yaşanmayacaktır.

 

 AVAX FRAMEWORK Çalışma Modeli

AVAX_F2 AVAX framework’ü de SOA mimari model çatısı altında geliştirdiği nesne ve bileşenleri AVAX metodolojisiyle bir araya getirilerek oluşturulmuştur.

 

SOA (Service Oriented Architecture) servis temelli mimari anlamına gelir ve AVAX’ın mimari modelidir. AVAX üzerinde var olan her nesne ve bileşen bir web servisidir ve her biri WCF üzerinde kullanılır.


AVAX FrameWork’ünün çalışma modelinde 2 temel yapı vardır;

1. AVAX Nesneleri; AVAX Kullanıcı Arayüzü Kontrolleri,

2. II. AVAX Bileşenler; DAL, Dil Yönetimi, Güncelleme Motoru,

AVAX Framework’ü içindeki tüm nesne ve bileşenler YazEvi Yazılım ARGE ekibi tarafından geliştirilmiştir

 

AVAX_F1

 

Temelde 4 katmanlı bir yapı gibi gözükmesine rağmen AVAX projeleri n-katmanlıdır. Zira AVAX’taki katman kavramı fiziksel değildir, sanaldır. Geliştirici iş katmanı üzerinde birden fazla katman oluşturabilir. Ve uygulamanın özelliğine göre her sanal katmanı bir fiziksel katmana tahsis edebilir. Özetle uygulayıcı, çalışma ortamında üretim prosesini bir sunucuya, sipariş prosesini başka bir sunucuya atayabilir. Veya bazı kullanıcıları bir sunucuya diğerlerin de başak bir sunucuya atayabilir.

AVAX_F3
AVAX ile geliştirilen AVAKOZA ERP çözümünün çalışma ortamı

 

AVAX FRAMEWORK STUDIO hem tasarım ve hem de çalışma ortamı olarak Microsoft Visual Studio.NET 2010 teknolojisini kullanmaktadır.

Tasarım Ortamı

Microsoft Visual Studio.NET Framework (WPF)

AVAX Tasarım Nesneleri

Proje Veritabanı (MS SQL Server, ORACLE, SYBASE, DB2, MySQL)


Çalışma Ortamı

Visual Studio.NET Framework (Silverlight veya WPF)

WCF, IIS

AVAX Çalışma Nesneleri

AVAX Çalışma Bileşenleri

Uygulama Veritabanı (MS SQL Server, ORACLE, SYBASE, DB2, MySQL)

Kontrol Veritabanı (MS SQL Server, ORACLE, SYBASE, DB2, MySQL)