Team Foundation Server 2010, yeni özellikleri ve iyileştirmeleri ile önceki versiyonlarına nazaran çok daha ses getirecek gibi. Bir kaç haftadır TFS 2010 ile oldukça haşır neşirim…Beta olmasına rağmen, önceki versiyonlarına göre çok daha kararlı olması açıkcası çok hoşuma gitti. Bir başka hoşuma giden ve hatta TFS 2010’daki en iyi yenilikten, “Team Project Collections” kavramından bahsetmeye çalışacağım.

Team Foundation Server 2010’da projelere yaklaşım biraz değişiyor. Aslında tam olarak değişim demek yanlış olur. Farklı bir bakış açısıyla da yaklaşabiliyorsunuz TFS 2010’da projelerinize. TFS, bir çok projenizin geliştirme sürecini yönetebileceğiniz bir ortam. Önceki versiyonlarda projeler tek tek açılıyor ve geliştirme süreçleri takip ediliyordu. Ancak çeşitli projelerde, aynı proje kapsamında, TFS’de farklı projeler açmak gerekiyordu. Özellikle bir ürün ailesi geliştiren yazılım şirketleri açısından bu durum oldukça sorun olabiliyordu.

TFS 2010 ile bu sorun ortadan kalkıyor. “Team Project Collections” kavramı ile, bir kaç TFS projesini bir grup altında ele almanız mümkün. Bu sayede bir şekilde bir biri ile ilişkili projeleri yönetmek daha kolay olabiliyor.Ayrıca  projeler arasında “Work Item”ları paylaşmak gibi kavramlarda bu şekilde daha kolay yönetilir bir hal alıyor. Ancak burada dikkat edilmesi gereken bir şey var. Az önce dediklerim aynı “collection” içinde olan projeler için. Farklı “collection”da olan projeler için, “work item”lar ile ilgili bir paylaşım söz konusu değil…Ya da bir “collection”dan diğer bir “collection”a brach açmak ne yazık ki olmuyor…Ki zaten olmasını beklemekte çok mantıklı değil.

  • Ürün
    • Ürün X
    • Ürün Y
    • Ürün Framework

Şeklinde bir ürün ailesi geliştirenler için bu yapı bir çok işi çok daha kolaylaştıracak. Bu sayede her ürün(proje) kendi içinde bağımsız olarak yönetilebilecek ve bağlı olduğu projeler(diğer ürünler) ile de kolayca ilişkilendirilebilecek.

Bu yeni yapının sağladığı önemli bir iyileştirme de performans konusunda. TFS 2010 ile beraber, veri tabanı yapısı değişiyor. Geliştirici gözüyle belki çok bir şey ifade etmiyor olabilir ama, TFS’in performansı ve özellikle veri yapılarının yönetilebilirliği açısından oldukça olumlu bir değişiklik bu.

Önceki TFS versiyonlarında, tüm projelerdeki “work item”lar, “changeset”ler falan TFS tarafında tek bir sayısal değer ile ifade ediliyordu. Her proje için düzenli olarak artan ID’ler yerine, server bazında düzenli olarak artan ID’ler mevcuttu. Yani X projesindeki bir “changeset”in numarası 1001 iken, Y projesinde yeni oluşan “changeset” numarası 1002 şeklinde oluyordu. Bundan dolayı da TFS’i yedekleme ve taşıma da çok büyük sorunlar yaşanmaktaydı. Ayrıca performans da bir süre sonra sorun olabiliyordu. TFS 2010 ile her projenin kendi içinde özel(unique) olması sağlanıyor. Bu açıdan da TFS 2010’da tüm projeler bir birinden ayrılmış oluyor.

TFS’de her “Project Collection” ayrı bir veritabanı olarak tutulmakta. TFS_XCollection, TFS_YCollection şeklinde…Bu sayede veritabanını yedeklemek çok daha kolay bir işlem oluyor.Her hangi bir yedek alma ihtiyacında, ilgili “collection”nın veritabanını yedeklemek yeterli olacaktır. Ayrıca  “collection”da yapılacak performans ayarları ile TFS’in projeler bazında da daha performanslı çalışması TFS 2010’da sağlanabiliniyor.Süper….

Neyse şimdilik bu kadar TFS 2010 ile ilgili vereceğim rahatsızlık ilerde sürecektir umarım…:P