Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Yazılım Projelerinde Use Case Nokta Modeliyle Maliyet Tahmini

Benzer bir sunumlar


... konulu sunumlar: "Yazılım Projelerinde Use Case Nokta Modeliyle Maliyet Tahmini"— Sunum transkripti:

1 Yazılım Projelerinde Use Case Nokta Modeliyle Maliyet Tahmini
Said Aydemir Adem Güçlü

2 Giriş Yazılım proje yönetiminde geliştirme maliyeti tahmini proje yaşam sürecinin en kritik aşamalardan biridir. Proje yöneticilerinin gözünü korkutan ana adımlardan biridir.

3 Literatür Literatürde bir çok maliyet tahmin modeli sunulmuştur fakat bu modeller yazılım geliştirme teknolojisindeki hızlı gelişime ayak uyduramadığı için kullanışsız hale gelmiştir. Önceleri maliyet tahmin modelleri yazılım ürününün son halinin büyüklüğünü esas parametre olarak kullanmıştır. Fakat proje başlangıcında bu parametreyi düzgün belirlemek, tecrübe ve bilgi birikimi sahibi olunsa dahi zor bir işlemdir.

4 Literatür Önceleri kullanılan yazılım maliyet tahmin modelleri yazılım ürününün son halinin büyüklüğü esas parametre olarak kullanmıştır. Fakat proje başlangıcında bu parametreyi düzgün belirlemek, tecrübe ve bilgi birikimi sahibi olunsa dahi zor bir işlemdir. COCOMO Literatürde geçen bu modeller genel olarak satır sayısı bazlı (LOC - Line of Codes), veya fonksiyonelite bazlı (FP - Function Point) ölçütleri kullanmışlardır. Bu ölçütlerin iki ana problemi vardır. Tanımlanmalarındaki zorluklar Eldeki metodoloji ile önceden tahmin zorlukları

5 Literatür LOC(Line of Codes) ve FP(Function Point) prosedürel yaklaşım ile gerçeklenen ürünlerin maliyet tahminine elverişli yöntemler olduğu için yeni nesil nesne yönelimli programlama (OOP) bazlı dillerin maliyet tahminini hesaplamada yetersiz kalmışlardır. Günümüzde ürünlerin ortaya konulmasındaki nesne tabanlı çözümleme yönelimleri ile birlikte yeni bir yazılım maliyet tahmin ölçütüne ihtiyaç duyulmuştur ve Use Case Point maliyet tahmin ölçütü bu eksikliğin giderilebilmesi için ortaya konulmuştur.

6 UCP UCP esas parametre olarak nesne yönelimli programlamanın dizayn aşamasında ihtiyaç duyduğu UML ile oluşturulan use case diyagramlarını maliyet çıkarımında esas faktör olarak kullanır.

7 UCP UCP ile maliyet tahmin analizinde şu dört metot kullanılmaktadır:
Unadjusted Use Case Weight (UUCW) Unadjusted Actor Weight (UAW) Technical Complexity Factor (TCF) Environmental Complexity Factor (ECF) Bu dört adımın hesabı sonucundaki çıktılar kullanılarak UCP hesaplanır.

8 Unadjusted Use Case Weight (UUCW)
UUCW yazılımın boyutuna katkıda bulunan esas elemandır. Hesaplanmasında use case’lerin adet ve karmaşıklıkları kullanılır. Bir sistemin UUCW hesabında, her bir use case önce tanımlanır ve işlem adetine paralel olarak Basit – Orta – Karmaşık olarak sınıflandırılır. Use Case Classification No. of Transactions Weight Simple 1 to 3 transactions 5 Average 4 to 7 transactions 10 Complex 8 or more transactions 15 UUCW = (Total No. of Simple Use Cases x 5) + (Total No. Average Use Case x 10) + (Total No. Complex Use Cases x 15)

9 Unadjusted Actor Weight (UAW)
UAW yazılımın büyüklüğünü etkileyen bir diğer etmendir. Sistemdeki aktörlerin adet ve karmaşıklığına bağlı olarak hesaplanır. Her bir aktör, aktör tipine bağlı olarak Basit – Orta – Karmaşık olarak sınıflandırılır. Actor Classification Type of Actor Weight Simple External system that must interact with the system using a well-defined API 1 Average External system that must interact with the system using standard communication protocols (e.g. TCP/IP, FTP, HTTP, database) 2 Complex Human actor using a GUI application interface 3 UAW = (Total No. of Simple actors x 1) + (Total No. Average actors x 2) + (Total No. Complex actors x 3)

10 Technical Complexity Factor (TCF)
TCF sistemin teknik değerlendirmesinde kullanılmak üzere ürünün boyut tahmini üzerine işlemler yapılarak hesaplanır. Alakasız(0) ile Gereklilik(5) derecesi arasında 13 teknik etmen ile ağırlıklandırılır ve teknik faktör(TF) denilen ara toplam elde edilir. TCF hesaplanan TF değeri kullanılarak elde edilir. TCF = (TF/100)

11 Technical Complexity Factor (TCF)
Description Weight T1 Distributed system 2.0 T2 Response time/performance objectives 1.0 T3 End-user efficiency T4 Internal processing complexity T5 Code reusability T6 Easy to install 0.5 T7 Easy to use T8 Portability to other platforms T9 System maintenance T10 Concurrent/parallel processing T11 Security features T12 Access for third parties T13 End user training

12 Environmental Complexity Factor (ECF)
ECF sistemin çevresel değerlendirmesinin hesaplanmasında kullanılan parametredir. Tecrübesiz(0) ve Uzman(5) aralığın 8 adet çevresel etmen değerlendirilir ve çevre faktörü (EF) elde edilir. ECF elde edilen bu EF değeri ile hesaplanır. ECF = (-0.03 x EF)

13 Environmental Complexity Factor (ECF)
Description Weight E1 Familiarity with development process used 1.5 E2 Application experience 0.5 E3 Object-oriented experience of team 1.0 E4 Lead analyst capability E5 Motivation of the team E6 Stability of requirements 2.0 E7 Part-time staff -1.0 E8 Difficult programming language

14 UCP UCP değeri: kullanımı ile hesaplanır. Proje büyüklüğü değerleri:
Unadjusted Use Case Weight (UUCW) Unadjusted Actor Weight (UAW) Teknik etmenler değeri Technical Complexity Factor (TCF) Çevresel etmenler değeri Environmental Complexity Factor (ECF) kullanımı ile hesaplanır. UCP = (UUCW + UAW) x TCF x ECF

15 EXTENDED UCP (e-UCP) Use case diyagramlarını tüm yönleriyle inceler.
Aktörler Use caseler Aktörler arasındaki iş birlikleri ve use case’leri Aktörler arasındaki ilişkileri Use case’ler arasındaki ilişkileri Use case’lerin detaylı akışı (UC Narrative)

16 Use Case Narrative

17 E-UCP metodu UCP’deki TCF and EF hesaplamalarını aynen kullanır.
Getirdiği yenilik ise UCP’deki boyut büyüklüğü hesaplamaları olan UUCW, UAW adımlarını (unadjusted hesap adımları) iyileştirmektedir ve bu değişiklik ile daha gerçekçi bir maliyet tahmini yapılabileceğini öngörür.

18 E-UCP Use Case Ağırlıklandırma
Use case’ler kullanım ve bağlılık derecesine göre basitten karmaşığa göre sınıflandırılır ve ağırlıklandırma bu şekilde gerçekleştirilir.

19 E-UCP Aktör Ağırlıklandırma
Aktörler kullanım ve bağlılık derecesine göre çok basitten çok karmaşığa göre sınıflandırılır ve ağırlıklandırma bu şekilde gerçekleştirilir.

20 E-UCP Use Case Narrative Ağırlıklandırma
Use Case Narrative hesaplamasında ise use case’lerin kullanım, gereksinim, amaç ve hedef öykülendirmeleri çıkarılır ve ağırlıklandırma bu adımlar üzerinden gerçekleştirilir..

21 E-UCP UUCP ağırlıklandırılmış use case, aktör ve use case narrative değerlerin toplamıdır ve E-UCP hesaplamasındaki temel değişkeni belirler. E-UCP daha sonra UUCP, TCF ve EF değerlerinin çarpımı ile bulunur. E-UCP = UUCP * TCF * EF

22 E-UCP hesabı sonucu bulunan değer yazılımın geliştirilmesi sürecindeki gerekli use case sayısını bulmaktadır. Gerçekçi bir adam/saat hesabı için ise bu sayı Karner‘in* önerisiyle E-UCP değeri 20 ile çarpılır. (Karner testlerinde bu değeri bir use case’in gerçeklenmesi için gereken ortalama adam/saat değeri olarak gözlemlemiştir) *Karner, G. Metrics for Objectory. Diploma thesis, University of Linköping, Sweden. No. LiTHIDA- Ex-9344:21.

23 Sonuç Ürün maliyet tahmini proje planlamasının en temel ve belki de sonuca direkt etki konusunda en önemli yapıtaşlarından biridir. Fakat ne yazık ki yazılım projeleri zaman planına ve bütçe planına uymama yönünde kötü ün salmış projelerdir. Bunun temel nedeni gereken iş gücünü baştan yanlış tahmin etmektir. COCOMO, FP gibi prosedürel düzlemde yapılan proje maliyet analizi yeni nesil OOP bazlı projelerde gerçekçi maliyet tahmini yapılmasını zorlaştırmaktadır. UCP bu eksikliği giderme odaklı olarak ortaya konmuştur ve bu çalışmada ayrıcaUCP’nin nasıl iyileştirebileceği üzerinde durulmuştur. E-UCP ile günümüz hızlı gelişen teknoloji dünyasında ürün ve maliyet tahmini arasında bir köprü oluşturulmuştur. Elbette ki bütün bu proje değerlendirme-derecelendirme süreçlerinin temel hedefi gerçekçi bir maliyet tahmin analizi ile başarılı proje sayısında gözle görülür bir artış ortaya koymaktır ve E-UCP OOP için sayılabilir maliyet tahmin modeli olduğu için gerçekçi bir yöntemdir.

24 Kaynakça Alwidian, J.; Hadi, W., "Enhancing the results of UCP in cost estimation using new external environmental factors," Information Technology and e-Services (ICITeS), 2012 International Conference on , vol., no., pp.1,11, March 2012. Periyasamy, K.; Ghode, A., "Cost Estimation Using Extended Use Case Point (e-UCP) Model," Computational Intelligence and Software Engineering, CiSE International Conference on , vol., no., pp.1,5, Dec Wang Fan; Yang Xiaohu; Zhu Xiaochun; Chen Lu, "Extended Use Case Points Method for Software Cost Estimation," Computational Intelligence and Software Engineering, CiSE International Conference on , vol., no., pp.1,5, Dec Zheng-Wei Huang, "Cost Estimation of Software Project Development by Using Case-Based Reasoning Technology with Clustering Index Mechanism," Innovative Computing, Information and Control (ICICIC), 2009 Fourth International Conference on , vol., no., pp.1049,1052, 7-9 Dec Keung, J., "Software Development Cost Estimation Using Analogy: A Review," Software Engineering Conference, ASWEC '09. Australian , vol., no., pp.327, April 2009. Hamdan, K.; El Khatib, H.; Shuaib, K., "Practical software project total cost estimation methods," Multimedia Computing and Information Technology (MCIT), 2010 International Conference on , vol., no., pp.5,8, 2-4 March 2010. Al Khalidi, N.; Saifan, A.A.; Alsmadi, I.M., "Selecting a standard set of attributes for cost estimation of software projects," Computer, Information and Telecommunication Systems (CITS), 2012 International Conference on , vol., no., pp.1,5, May 2012.


"Yazılım Projelerinde Use Case Nokta Modeliyle Maliyet Tahmini" indir ppt

Benzer bir sunumlar


Google Reklamları