Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

YazILIm MühendİSLİĞİ İÇİN Malİyet Hesaplama

Benzer bir sunumlar


... konulu sunumlar: "YazILIm MühendİSLİĞİ İÇİN Malİyet Hesaplama"— Sunum transkripti:

1 YazILIm MühendİSLİĞİ İÇİN Malİyet Hesaplama
MEHMET KAYKISIZ/ Yrd. Doç.Dr. Resul DAŞ 

2 Önemli Açıklama Burada gösterilen metotlar sadece açıklama içindir. Ayrıntılı olarak sadece Use-Case Point anlatılmıştır. Bu metotları çoğu matematiksel olduğu için inşaat sektöründe bile kullanılabilmektedir. Amaç iş süresi vb. Parametrelere göre maliyet hesaplamaktır.

3 Maliyet Hesaplama Metotları
Analysis Effort method COCOMO COCOMO™ II COSYSMO Evidence-based Scheduling  Function Point Analysis Proxy-based estimating Program Evaluation and Review Technique (PERT) SEER-SEM  SLIM The Planning Game (from Extreme Programming) Weighted Micro Function Points (WMFP) Wideband Delphi The Use Case Points method (UCP) CETIN[1]

4 Analysis Effort Method
Analysis Effort Method metodu, yazılım projelerinin ne kadar süreceğini hesaplamak içindir.Burada amaç başlangıçta bir işi gerçekleştirme süresi belirlemektir. Bu yönteme girişler Boyut (S), Yakınlık (F) ve Karmaşıklık (C) gibi sayısal faktörlerdir. Bir yazılımın incelenmesi için önceki tecrübelere dayanarak bir tahmin yapılır. Tasarım, Kodlama, Birim Testleri, Testler değerlendirme parametreleridir. Eğitim ve Proje Yönetimi bu hesapların dışındadır. Bu yöntem tecrübelere dayalı tahminlerle yürütülür. [2]

5 Constructive Cost Model (COCOMO)
Constructive Cost Model (COCOMO), Barry W. Boehm tarafından 1981 yılında geliştirilmiştir. Şuan ki ve gelecekteki verilerin regrasyon analizini kullanır satır ile satır arasındaki dönemin büyük projelerinde maliyet hesaplaması için kullanıldı. COBOL, PL/I programlama dilleri kullananlar tarafından tercih edildi. Şelale geliştirme modeline dayanan bir temeli vardı. Bu metot COCOMO 81 olarakta bilinir. [3]

6 Constructive Cost Model (COCOMO)
İş Gücü (K) K= a x Sb Zaman (T) T= c x Kd S: Bin tipinde satır sayısı a,b,c,d : 3 farklı model için katsayılar Ayrık Projeler İçin: a=2,4 , b=1,05 , c=2,5 , d= 0,38 Yarı – Gömülü Projeler İçin: a=3,0 , b=1,12 , c=2,5 , d= 0,35 Gömülü Projeler İçin: a=3,6 , b=1,20 , c=2,5 , d= 0,32 [4]  

7 COCOMO 2 COCOMO 81 in arkasından 2000 yılında gerçekleştirildi. Veritabanlarının kullanıldığı modern projelerde ve daha kapsamlı ve sağlı sonuçlar sağladı. Yatırım veya bir yazılım geliştirme sırasında gereken diğer finansal kararlar Planlama ve kontrolü için temel olarak proje bütçeleri ve programları ayarı Karar veya yazılım maliyet, zamanlama, işlevsellik, performans veya kalite faktörleri arasında denge sağlamak Yazılım maliyet ve zamanlama risk yönetimi kararları Yazlım sistem parçalarının hangisilerinin yeniden alınaca, kiralanacak vb. Kararları alabilmek Yeniden kullanımı yoluyla, kuruluşun yazılım yeteneğini geliştirmek için karma yatırım stratejileri ayarlama, araçlar, süreç olgunluk, dış kaynak kullanımı, vb [5]

8 Constructive Systems Engineering Cost Model (COSYSMO)
Ricordo Valerdi tarafından 2002’de üretildi. Bu metot donanım ve yazılım projeleri üzerinde sisteme, personel ve iş süresinin bir tahmini verilerek hesaplanır. Başlangıçta 2002 yılında geliştirilen, modeli şimdi Raytheon, Northrop Grumman, Lockheed Martin, SAIC, General Dynamics ve BAE Systems gibi büyük havacılık ve savunma şirketi tarafından sağlanan 50'den fazla projede kullanılıyor. [6]

9 Constructive Systems Engineering Cost Model (COSYSMO)

10 Evidence-based Scheduling
Evidence-based Scheduling, Joel Spolsky tarafından oluşturuldu. Amaç yazılım müh. İlkeleri üzerinde bir yorumcu tarafıdan oluşturulan yazılım tahmin yaklaşımıdır. Bu yaklaşımda, süre hesabı yapılırken akıla gelen tüm parametreler alınır. Hastalıktan, Çay, Sigara molasına kadar herşey önemlidir.[7]

11 Function Point Function Point , bilgi sisteminde, bir kullanıcıya verdiği işin işlevsellik miktarını ifade ölçüttür. Tek bir birimin maliyeti(dolar/saat) geçmiş projelere göre hesaplanır yılında IBM’de Allan Albrecht tarafından verimlilik ölçmek için hazırlandı. Yazılımın işlevsel gereksinimleri belirlenir ve her biri şu beş türe göre sınıflandırılır; Çıkışlar, sorular, girişler, iç dosyalar ve dış arayüzler. Fonksiyonlar bunlara göre katagorize edilir, karmaşıklığına göre puanlandırılarak dereceleri belirlenir.[8]

12 PRICE Systems PRICE Systems, 1975 yılında RCA şirketi tarafından bulundu. Genellikle parametrik maliyet tahmini, yazılımlar daha erken geliştirilmesi için kabul edilmiştir. Bu sistem şu anda bir uygulama şeklinde satılıyor. 1976 yılında Donanım Yaşam Döngüsü Maliyet Modeli olarak başlangıç yaptı. Daha sonra yazılım projeleri için sürece yeni yöntemler katıldı. Fakat uygulamanın arka planı hakkında yeterli bir bilgi yok. [9]

13 Proxy-based Estimating
Proxy-based Estimating, bu sistem kişisel proje geliştirenler için tasarlanmıştır. Benzer projelerdeki çaba üzerine kurulu bir planı vardır, her proje aynı çabayla yapılır mantığına dayanır. [10]

14 Program (or Project) Evaluation and Review Technique
Program (or Project) Evaluation and Review Technique, kısa adı PERT. Belirli bir projeyi tamamlayana kadar ki görevleri analiz ve temsil etmek için tasarlanmıştır. İlk olrak 1950’lerde ABD donanması tarafından geliştirilen yaygın kritik yön yöntemi ile birlikte kullanılmıştır. [11]

15 Program (or Project) Evaluation and Review Technique

16 Use Case Points (UCP) Use Case Points (UCP), yazılım projelerinde, projenin boyuutunu tahmin etmek için kullanılır.Yazılım tasarım ve geliştirme için kullanılan Unified Modeling Language (UML) ve Rational Unified Process (RUP) gibi metodolojiler kullanılır. UCP kavramı modelleme teknikleri UML kümesinin parçası olan kullanım durumlarını kullanılarak yazılmış olan sistem için gereksinimlere dayanmaktadır. Projelerde Emek hesabı için kullanılır. 1993’de Gustov Karner tarafından geliştirilmiştir.

17 Example Bir online alışveriş sistemi ele alınmıştır. Aşağıdaki diyagram geliştirilecek sistem için Use-Case Diyagramını gösteriyor.

18

19 Arındırılmamış Kullanım Durumu Ağırlık (UUCW)
UUCW hesaplamak için,kullanım durumları tanımlanmalıdır ve her durum için işlem sayısı belirlenmeli. Alışveriş sistemimiz için 9 farklı kullanım mevcut durumda. Bu durumlar için 2 tane basit, 3 tane ortalama,4 tane karmaşık durumumuz olduğunu varsayalım. UUCW = (x 5 Basit Kullanım Durumları toplam sayısı) + (Toplam No Ortalama Kullanım Durumları x 10) + (Toplam No karmaşık Kullanım Durumları x 15) Online Alışveriş Sistemi, UUCW = (2 x 5) + (3 x 10) + (4 x 15) = 100 UUCW = 100

20 Düzeltilmemiş Aktör Ağırlık (UAW)
UAW hesaplamak için aktörler hesap edilmelidir. Online Alışveriş Sistemi kullanma durumu diyagramında beş aktör görünmektedir; (Yani Online Müşteri, Pazarlama Yöneticisi, Depo Memuru, Ambar Müdürü) Ödeme İşleme Sisteminde; Bir ​​basit ve insan kullanıcıların aktörlerin her biri için dört kompleks durum aktör bulunmaktadır. UAW = (x 1 Basit Aktörler toplam sayısı) + (Toplam No Ortalama Aktörler x 2) + (Toplam No Complex Aktörler x 3) Online Alışveriş Sistemi, UAW = (1x 1) + (0 x 2) + (4 x 3) = 13 UAW = 13

21 Teknik karmaşıklık (TCF)
Teknik karmaşıklıkta değerlerin her bir iş için yüküne bakılarak hesaplanır.

22 Faktör Tanım Ağırlık Atanan Değeri Ağrlık X Atanan Değer T1 Dağıtık Sistem 2.0 5 10 T2 Tepki süresi / performans hedefleri 1.0 T3 Son kullanıcı verimliliği 3 T4 Dahili işleme karmaşıklığı 2 T5 Kodu yeniden kullanılabilirliği T6 Kolay kurulum 0.5 1 T7 Kolay Kullanım 2.5 T8 Diğer platformlar için taşınabilirlik 4 T9 Sistem bakım T10 Eşzamanlı / paralel işleme T11 Güvenlik özellikleri T12 Üçüncü taraflar için erişim T13 Son kullanıcı eğitimi Toplam (TF): 42

23 Teknik karmaşıklık (TCF)
TCF = (TF/100) Online Alışveriş Sistemi, TCF için = (42/100) = 1.02 TCF = 1.02

24 Çevre Karmaşıklı Faktörü (ECF)
Projeyi etkileyebilecek çevresel faktörlere birer değer atanınır ve ağırlık puanlarıyla hesaplanır.

25 Faktör Tanım Ağırlık Atanan Değer Ağrlık X Atanan Değer E1 Kullanılan geliştirme süreci ile aşinalık 1.5 3 4.5 E2 Uygulama deneyimi 0.5 E3 Takım Nesne yönelimli deneyimi 1.0 2 E4 Lier analist yeteneği 5 2.5 E5 Ekibinin Motivasyon E6 Şartları kararlılığı 2.0 1 E7 Part-time personel -1.0 E8 Zor bir programlama dili 4 -4 Total (EF): 10.5

26 Çevre Karmaşıklı Faktörü (ECF)
ECF = (-0.03 x EF) Online Alışveriş Sistemi, ECF = (-0.03 * 10.5) = 1.085 ECF = 1.085

27 Use Case Points (UCP) Arındırılmamış Kullanım Durumu Ağırlık (UUCW), düzeltilmemiş Aktör Ağırlık (UAW), Teknik Karmaşıklık Faktörü (TCF) ve Çevre Karmaşıklık Faktörü (ECF) tespit edildikten sonra, Use Case Points (UCP) aşağıdaki formülle hesaplanır: UCP = (UUCW + UAW) x TCF x ECF Online Alışveriş Sistemi, UCP = ( ) = x 1,085 x UCP =

28 Use Case Points (UCP) Online Alışveriş Sistemi, yazılım geliştirmek için toplam tahmini büyüklüğü Use Case Points. Şimdi Projenin büyüklüğünü bildiğimize göre; Kişi başı 28 saatten hesaplayarak süreci hesaplayalım. Tahmini Emek = UCP x Saat Online Alışveriş Sistemi; Tahmini Emek = x 28 Tahmini Emek = 3501 Saat[12]

29 Ek Açıklamalar Günümüz Teknolojileri için yeni maliyet hesaplamaları mevcuttur. Fakat çok ileri konulardır. Ör;Bulanık Mantık:Optimized Fuzzy Logic Based Framework for Effort Estimation in Software Development Ör;Sinir Ağları:Optimized Fuzzy Logic Based Framework for Effort Estimation in Software Development

30 KAYNAKLAR Joel on Software: And on Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, and Managers, and to Those Who, Whether by Good Fortune or Ill Luck, Work with Them in Some Capacity, Joel Spolsky, August 2, 2004


"YazILIm MühendİSLİĞİ İÇİN Malİyet Hesaplama" indir ppt

Benzer bir sunumlar


Google Reklamları