Use of project similarity for software development time estimation
- Global styles
- Apa
- Bibtex
- Chicago Fullnote
- Help
Abstract
Geliştirme süresi kestirimi proje yönetimi açısından özellikle yazılım içerikli sistem projelerinde çok önemli bir husus olarak değerlendirilmektedir. Proje başlamadan önce ürünün geliştirme detayına yönelik çok fazla bilgi mevcut olmamaktadır. Bundan dolayı, geliştirme süresi doğru bir şekilde tahmin edilemeyebilir. Aynı alanda bulunan eski projeler var ise, bu projelerdeki veriler yeni projelerde kullanılabilmektedir. Projenin başında gereksinimler belirlenmekte ve gereksinim özellikleri dokümanı hazırlanmaktadır. Önceki projelerden kullanılan gereksinimlerin belirlenmesiyle benzerlik analizi yapılabilmekte ve bu analiz, geliştirme süresi kestirimi yapılmasında kullanılabilmektedir. Bu tezde, daha önceden proje yönetimi kapsamında önerilen bir modelin, yazılım içerikli geliştirme projelerinde uygulanabilirliği çalışılmıştır. Bu kapsamda, aynı alanda bulunan farklı ürünler için gereksinimlerin tekrar kullanılmasıyla ürünlerin geliştirme süresine etkisi çalışılmıştır. Aynı alandaki farklı ürünler için benzerlik analizi yapılmış ve bu analizin sonuçları geliştirme süresi kestiriminde kullanılmıştır. Geliştirme süresi kestirimi için Griffin tarafından önerilen ürün geliştirme süresi modeli [9] kullanılmıştır. Griffin tarafından önerilen modelin endüstriyel organizasyonlarda uygulanabilirliğine yönelik olarak dokuz adet deneysel çalışma yapılmıştır. Bu deneysel çalışmanın kapsamında yazılım projeleri ve yazılım ve donanım ürünleri içeren sistem projeleri değerlendirilmiştir. Bu çalışmalardan elde edilen sonuçlar, Griffin tarafından önerilen model ile karşılaştırılmıştır. Firmalardan elde edilen verilere göre, Griffin tarafından önerilen ürün geliştirme süresine ilişkin formülasyona, yazılım projelerine yönelik olarak bir modifikasyon önerilmiştir. Sadece yazılım içerikli veya yazılım ve donanım içerikli projelerde, önerilen model, proje yöneticilerinin projeyi daha doğru bütçelenmesinde yardımcı olacaktır.Anahtar Kelimeler: Ürün geliştirme süresi, gereksinimlerin tekrar kullanılmasına dayalı ürün benzerliği Accurate development time estimation is crucial for project management in general, and critical for software intensive systems projects, in particular. Before beginning the project, little information is available for development details. Therefore, development time may not be estimated correctly. If data on previous projects in the same domain is available, this can be used for development time estimations. At the beginning of the project, requirements are defined and requirements specification document is created as a formal document in the organizations. By using the reused requirements from previous projects, a similarity analysis can be performed and this analysis can be used for development time estimation. This study investigates the applicability of a model that was proposed earlier for project management in general, in software intensive systems development projects. In this scope, the impact of requirements reuse on product development duration for different products in a similar domain is studied. Similarity analysis has been performed for different products in the same domain and the result of this analysis is used to estimate the development time. For development time estimation, Griffin?s model [9] is used. For the applicability of Griffin?s model for industrial companies, nine case studies from different organizations have been performed for software and system development projects which consist of hardware and software components. The results of the case studies are compared with Griffins model. According to the empirical results, a modification to Griffin?s formulation for product development time is proposed for software projects. For the projects which include only software or both software and hardware, the proposed model will guide project managers to estimate project budgets more accurately.Keywords: Product development time, product similarity based on requirements reuse
Collections