Yazılım Projelerinde Bütünleşik Efor Tahmini için Farklı Veri Tabanlarının Senkronizasyonu
Yazarlar: İlknur Gür Nalçacı ve Kazım Kıvanç Eren ve Burak Bilge
Özet
Yazılım hizmeti veren firmalar müşterileri ile olan ilişkilerini yönetmek ve içerde yazılım süreçlerini izleyebilmek adına birbirinden bağımsız proje yönetim araçlarından faydalanmaktadır. Farklı uygulamaların kullanılması, platformlar arası senkronizasyon problemlerine sebep olmaktadır. Uçtan uca süreç bazlı efor tahminlerinin yapılabilmesi için projenin farklı aşamalarının yönetildiği bağımsız uygulamaların senkronize edilmesi deneyimi bu yazının konusunu oluşturmaktadır. Bu çalışma İdea Teknoloji Çözümleri TEYDEB 1501 destekli "NOTICE: Katmanlı Mimari Yazılım Projelerinde Efor Tahmin Modeli" projesi kapsamında gerçekleştirilmiştir.
Giriş
Yazılım projelerinin efor tahmininin tutarlılığı müşteri ve firmanın ilişkilerinin gidişatı açısından önemli bir yere sahiptir. Yazılım geliştirme teknolojisinin sürekli değişen senaryolar içinde olması, firmaların kullandığı yazılım dilleri, altyapısı personel kadrosu gibi birçok etkene göre efor konusundaki tahminlerde kayda değer farklılıklara sebep olmaktadır.
Yazılım maliyeti hesaplanmasında birçok metot geliştirilmesine rağmen firma için en uygun olanın seçilmesi ise yeni bir problemi beraberinde getirmektedir. Mevcutta efor hesaplanmasında birçok model/metot geliştirilmiş ve modeller sınırlı bir veri seti üzerinden oluşturulmuştur. Her metodun zayıf ve güçlü yönleri mevcuttur. Model başarım oranları firmalara göre farklılık gösterebilmektedir. Bu sebeple projeye ve firmaya özgü parametrelerle modeller geliştirilmesinin daha tutarlı sonuçlar vereceği öngörülmektedir.
Proje yazılım yaşam döngüsü incelendiğinde talep sürecinin tetikleyici olduğu; analiz ve yazılım süreçlerinden oluştuğu gözlenmiştir. Bir projeye ait bir efor tahmini yapılabilmesi için bu süreçlerin bütünleşik şekilde ele alınması gerektiği gereksinimi belirlenmiştir.
Firmamız bünyesinde müşteri taleplerinin alındığı, analizinin gerçekleştiği CA [18] ve yazılım süreçlerinin yönetildiği JIRA [14] iki ayrı sistem mevcuttur. Projeye ait farklı süreçlerin yönetildiği ve farklı birimlerin kullandığı bu iki sistemin arasında herhangi bir entegrasyon bulunmamaktadır. Geliştirilecek olan efor tahmin modeli; süreci bütünleşik ele alabilmek adına her iki sistemden gelecek olan verilerle eğitilecektir.
Yazılım yaşam döngüsüne ait uçtan uca bir efor tahmini yapabilmek için birbirinden bağımsız olan bu iki aracın senkronizasyonunun yapılması bu yazının konusu olacaktır. Bu çalışma yazılım yaşam döngüsünde müşteri talepleri kaynaklı değişiklikler veya geliştirmelerin hem müşteri tarafından daha şeffaf bir şekilde takip edilmesi, hem de yazılım geliştirici tarafından daha hızlı sürece alınmasını hedefleyen ve firmaya özgü efor tahmini yapılmasını amaçlayan "NOTICE: Katmanlı Mimari Yazılım Projelerinde Efor Tahmin Modeli" projesi kapsamında gerçekleştirilmiştir.
