15 Ekim 2007 Pazartesi

Netron Staj Değerlendirmesi (mtcakmak)

Aslında çok geç kalınmış bir değerlendirme oldu bu ama olsun...
29 Temmuz 2007'de 4 haftalık çalışmanın sonunda Netron stajını tamamladık. Stajın ilk haftasındaki deneyimlerimizi belirtmiştim. Şimdi devamı:
Netron Türkiye'de Microsoft teknolojilerini en iyi kullanan ve en iyi uygulayan firmalardan bir tanesi; bunun en önemli nedenlerinden biri de firma ortaklarının Türkiye'deki MVP(Microsoft Valuable Person)ler olması..
2. haftadan itibaren Hyundai'nin Kozyatağı'nda Merkez binasında Netron'un yürüttüğü bir proje içinde bulunduk.
Hyundai'de Netron adına işleri yürütmeye başlayan bir Proje Yöneticisi(Ertan Bey) ve bir yazılım mimarı(Mutlu Kaya Bey) ile birlikte projenin -zaten başlamış olan- analiz aşamasında 2 hafta çalıştık.(Projeye ilerleyen aşamalarda 3 yazılımcı dahil olacağını öğrendik.) Proje Hyundai'nin tüm bayi otomasyon sisteminin ve servis otomayonunun .Net tabanlı bir sistem olarak daha kullanışlı bir arayüzle yenilenmesini içeriyordu. Vizyon-Kapsam dökümanlarının hazırlanmasında ekibe yardımcı olduk. Yazılım da dökümantasyon neden önemlidir? sorusunun cevabını bir kısım öğrendik. Sizlere aktarmaya çalışayım:
  • Sistemin analizinde çalışan tek bir yazılımcı sayesinde maliyet düşüyor. Ekibe sonradan gelen yazılımcılar sadece dökümanları okuyarak projeye kolaylıkla dahil olabiliyor.
  • Proje yazılmaya başlamadan önce kesin çizgilerle kapsam belirlenmiş oluyor ki Proje Yönetimi açısından bu çok kritik.
  • Müşteri tarafından imzalanmış bir Kapsam dökümanı; daha ilerde "Şunu da projeye ekleyin" diyen müşteriyi;"Anlaşmamız bu şekildeydi." diyerek durdurabilmenizi sağlar.

Neyse biz son haftamızı PoC(Proof Of Concept)* çalışmaları ile geçirdik. Ben SQL Server Replication üzerine devam ederken; Harun Developer Express UI komponentleri ile esnek ve kullanışlı bir arayüz geliştirmek üzerine çalıştı. Barış da NHibernate(bir tür Dynamic SQL aracıdır) üzerine çalışma yaptı.

Sql Server Replication'ı basit olarak şu şekilde açıklayabilirim. Bir veritabanının birden fazla makinada bulunan Sql Server'lar ile eşleltirilmesi... Bu projedeki ihtiyaç ise şu şekildeydi: Bayiler çeşitli nedenlerle uzun süreli merkeze bağlantıları kesilebiliyor(Mesela 1 hafta);
Bu süre boyunca veritabanın kendi makinası üzerinde bulunan bir kopyası ile tüm eski kayıtlara(Mesela hangi servislerde hangi parçalar üzerinde hangi işlemler gerçekleştirilmiş) ulaşabilecek; ya da sistem aracılığıyla satış yapabilmesi isteniyordu. Bağlantı geri geldiğinde ise tüm clientlardaki tüm verilerin (Üzerinde yapılan Update, Insert, Delete gibi işlemlerin sonuçlarındaki veritabanının)tekrar eşleştirilmesi isteniyordu. Bunun için bir örnek simüle etmeye çalıştım. Çok da başarılı olduğumu söyleyemem. 10 sayfalık bir döküman teslim etmeme rağmen stabil olarak çalıştığını ispatlayamadım.Dil çıkaran

Bu stajda; Çok katmanlı Mimarinin önemini ve İleri Nesneye Dayalı Tasarımın(Design Patterns) gerekliliklerini öğrendik. Programlama Dillerinin amacı gerçekleştirmekte sadece bir araç olduklarını öğrendik. Son öğrendiğimiz şey ise piyasada her zaman çok farklı sistemlerle karşılaşabileceğimiz ama bizim Marka bağımsız olmamız gerektiğiydi.

Sizlere yararlı olması dileğiyle; herkese iyi tatiller,stajlar, çalışmalar vb... Gülümseme

*: Bir yazılım projesinde analiz sonucunda kullanılması planlanan Tekniklerin çalışma ve/veya uygulanabilirlik ayrıntılarını öğrenmek için küçük çaptaki gerçekleştirimlerdir(simulasyonlardır).

Yazar: M. Tahir Çakmak