1 / 58

YAZILIM PROJE YÖNETİMİ Öğr. Gör. Dr. Emin BORANDAĞ eminb @ maltepe .tr

YAZILIM PROJE YÖNETİMİ Öğr. Gör. Dr. Emin BORANDAĞ eminb @ maltepe .edu.tr. Maltepe Üniversitesi Mühendislik Fakültesi. YZM 403. 4. BÖLÜM. YAZILIM BÜYÜKLÜK ve EMEK KESTİRİMİ. Genel Bakış…. Yazılım büyüklük ve emek kestirimine giriş Yazılımda ölçme Yazılım kestirimi için temeller

mark-olsen
Download Presentation

YAZILIM PROJE YÖNETİMİ Öğr. Gör. Dr. Emin BORANDAĞ eminb @ maltepe .tr

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. YAZILIM PROJE YÖNETİMİÖğr. Gör. Dr. Emin BORANDAĞeminb@maltepe.edu.tr Maltepe Üniversitesi Mühendislik Fakültesi YZM 403

  2. 4. BÖLÜM YAZILIM BÜYÜKLÜK ve EMEK KESTİRİMİ YZM 403 - Yazılım Proje Yönetimi

  3. Genel Bakış… • Yazılım büyüklük ve emek kestirimine giriş • Yazılımda ölçme • Yazılım kestirimi için temeller • Yazılım büyüklük kestirim teknikleri • Teknik büyüklük kestirim yöntemleri • İşlevsel büyüklük kestirim yöntemleri • Yazılım emek kestirim teknikleri • Algoritmik Olmayan Emek Kestirim Yöntemleri • Algoritmik Emek Kestirim Yöntemleri YZM 403 - Yazılım Proje Yönetimi

  4. Giriş • Yazılım geliştirme sürecinin başında, büyüklük, emek ve maliyet kestirimleri geliştiricilerin ve yöneticilerin karşılaştığı en önemli problemlerdir. • Yazılım proje yönetiminde çok önemli olan ölçme ve bu kavram çerçevesinde yapılanan kestirim yöntemleri aracılığı ile zaman ve işgücü gibi planlamaların yapılabilme gereği açıktır. YZM 403 - Yazılım Proje Yönetimi

  5. Yazılımda Ölçme • Her yazılım projesinin temel hedefi, müşterinin ihtiyaçlarını karşılayan, öngörülmüş bütçe ile zamanında teslim edilen hatasız bir yazılım geliştirmektir. • Yazılımda ölçüm yöntemlerinin kullanılması, yazılım sektöründe gittikçe önem kazanır olmuştur. • Kurumlar üç ana amaçla yazılımda ölçümü gündemlerine almaktadırlar: • Yazılım projesini anlamak ve modellemek, • Yazılım projelerinin yönetilmesine yol göstermek, • Yazılım süreç geliştirme ve iyileştirme çalışmalarını yön vermek, YZM 403 - Yazılım Proje Yönetimi

  6. Yazılımda Ölçme (devam…) • Yazılımın ölçülebilmesi, harcanılan zaman, emek, proje büyüklüğü ve kalite gibi faktörlerin belirlenmesine olanak sağlamaktadır. • Organizasyonlar, bu verilere dayanarak ileride alacakları projeler için kestirim yapabilme imkânı bulabileceklerdir. • Yazılım projelerinde kaliteyi arttırmak, her şeyden önce doğru ölçme yöntemlerine bağlıdır. Birden fazla kestirim yöntemi kullanılmalıdır. YZM 403 - Yazılım Proje Yönetimi

  7. Beş Temel Yazılım Ölçütü • Büyüklük (Size), • Emek (Effort), • Maliyet (Cost), • Zaman (Duration), • Kalite (Quality). YZM 403 - Yazılım Proje Yönetimi

  8. Yazılım Büyüklük Kestirim Yöntemleri • Yazılım büyüklük kestiriminde kullanılan yöntemler; • teknik büyüklük kestirim yöntemleri, • işlevsel büyüklük kestirim yöntemleri olarak sınıflandırılmıştır. YZM 403 - Yazılım Proje Yönetimi

  9. Teknik Büyüklük Kestirim Yöntemleri • Satır Sayısı (Lines of Code - LOC):Uygulamanın büyüklüğünü anlamak için bilgisayar programlarındaki kodların satırlarını sayma en geleneksel ve en yaygın şekilde kullanılan yazılım ölçümüdür. • Satır Sayısı, kod içerisindeki satır sayısını temsil eder. • Kod satır sayısı kestiriminde, proje tahmin edilen alt birimlerine ayrıştırılır. Her bir alt birim için satır sayıları önerilir. Bu kestirimler yapılırken de en küçük, en olası ve en büyük ihtimaller belirlenip, bunlarla bir ortalama işlemi yapılır. • Satır sayısı kestirimi: (k+4o+b)/6 şeklinde hesaplanabilir. YZM 403 - Yazılım Proje Yönetimi

  10. Teknik Büyüklük Kestirim Yöntemleri (devam…) • Satır Sayısı (Lines of Code - LOC) • Tabi ki 1000 LOC değeri olan bir Java programı, 100 LOC değerine sahip bir Java programından 10 kat daha büyüktür. Fakat bu sayının içinde yorum satırları var mı? Yorum satırlarını dahil etmeli miyiz? (Yorum Satırının Avantajı) • Deneyim ile kod oluşturumu (Aynı özellik farklı kod sayısı) • Programlaa dili farkı Assembler <> VisualBasic • Değişkenlerin tanımlanması  LOC olarak sayılmalı mıdır? YZM 403 - Yazılım Proje Yönetimi

  11. Teknik Büyüklük Kestirim Yöntemleri (devam…) • Satır Sayısı (Lines of Code - LOC) • İki başlıca LOC Kaynak Kod Satır Sayısı ölçüm çeşidi vardır. Bunlar; • Fiziksel LOC • Mantıksal LOC • Örnek 1: • for (i=0; i<100; ++i) printf ("hello");/* How many lines of code is this? */ 1 Fiziksel Kod Satırı 2 Mantıksal Kod Satırı (for ve printf ifadesi) 1 Yorum Satırı YZM 403 - Yazılım Proje Yönetimi

  12. Teknik Büyüklük Kestirim Yöntemleri (devam…) • Satır Sayısı (Lines of Code - LOC) • Örnek 2: • Programcıya göre ve/veya kodlama standartlarına göre Örnek 1’deki kod aşağıdaki şekilde de yazılabilir. for (i=0; i<100; ++i) { printf("hello"); } /* Now how many lines of code is this? */ 4 Fiziksel Kod Satırı 2 Mantıksal Kod Satırı (for ve printf ifadesi) 1 Yorum Satırı YZM 403 - Yazılım Proje Yönetimi

  13. İşlevsel Büyüklük Kestirim Yöntemleri • İşlevsel Büyüklük Ölçümü (Functional Size Measurement - FSM), kullanıcıya teslim edilecek yazılımın işlevselliğini temel alır. • FSM, işleve göre karmaşıklığın ve büyüklüğün belirlenmesi ile ölçülmektedir. • Teknik Büyüklük Ölçütleri - geliştirici bakış açısından… • İşlevsel Büyüklük Ölçütleri - kullanıcı bakış açısından… YZM 403 - Yazılım Proje Yönetimi

  14. İşlevsel Büyüklük Kestirim Yöntemleri (devam…) • İşlev Puanı (FunctionPoints - FP), • IFPUG İşlev Puanı Analizi (IFPUG FunctionPointsAnalysis – IFPUG FPA), • Mark II İşlev Puanı (Mark II FunctionPoints – MK II FP), • Nesma İşlev Puanı (NesmaFunctionPoints), • Tam İşlev Puanı (FullFunctionPoints – FFP), • COSMIC Tam İşlev Puanı (COSMIC FullFunctionPoints – COSMIC FFP), • Nesne Puanı (ObjectPoints), • Nesne-Tabanlı İşlev Puanı (Object-OrientedFunctionPoints – OO FP), • Nesne-Tabanlı Yöntem İşlev Puanı (Object-OrientedMethodFunctionPoints – OOmFP), YZM 403 - Yazılım Proje Yönetimi

  15. İşlev Puanı (FunctionPoints) • Bu yaklaşım, verimliliğin üretilen işlev puanına göre adam-ay olarak belirlenmesini öngörür. • Eğer proje ile ilgili girdi çıktı gibi özellikler tahmin edilebiliyorsa, bunlar kullanılarak geliştirilecek sisteme ait bir İşlev Puanı (FunctionPoints) hesabı yapılabilir ve sonuçlar Satır Sayısına (LOC) çevrilebilir. Bu satır sayısından maliyet, emek ve süre tahmini yapılabilir. YZM 403 - Yazılım Proje Yönetimi

  16. İşlev Puanı (FunctionPoints) (devam…) SLOC FP İşlev Puanı SLOC’a dönüştürme • İşlev Puanını, SLOC’a dönüştürmek için programlama diline göre saptanan faktörler kullanılır. • Dış Girdilerin sayısı • Dış Çıktıların sayısı • Dış Sorguların sayısı • İç Mantıksal dosyaların sayısı • Dış Arayüz Dosyalarının sayısı • Ağırlık Faktörleri ile ayarlanma • Teknik Karmaşıklık Faktörleriyle ayarlama YZM 403 - Yazılım Proje Yönetimi

  17. İşlev Puanı (FunctionPoints) UFP = Dış Girdiler x W(1) + Dış Çıktılar x W(2) + Dış Sorgular x W(3) + İç Dosyalar x W(4) + Dış Arayüz Dosyaları x W(5) Her bir bileşenin zorluk derecesi basit, orta ve karmaşık gibi Tablo’da verilen rakamsal değerlere bağlı olarak ölçülebilmektedir. Bu ölçülen değerler toplanarak Düzeltilmemiş İşlev Puanı’nı (UnadjustedFunctionPoints - UFPs) oluşturmaktadır. YZM 403 - Yazılım Proje Yönetimi

  18. İşlev Puanı (FunctionPoints) (devam…) 14 Genel Sistem Özelliğine göre sistemin beklenilen uygulama zorluğu için ilave bir teknik karmaşıklık faktörü hesaplanır. • 0: hiç yok ya da etkisiz, • 1: önemsiz etki, • 2: az etkili , • 3:orta düzeyde etkili • 4: önemli düzeyde etkili, • 5: güçlü etki DI = i=1.. 14 Cevapi TCF = 0,65 + 0,01 x DI TCF: TechnicalComplexityFactors DI: Total Degree of Influence YZM 403 - Yazılım Proje Yönetimi

  19. İşlev Puanı (FunctionPoints) (devam…) • İşlev Puanı aşağıdaki formül ile hesaplanır: • FP = UFP x TCF • İşlev Puanı’nı, Satır Sayısına dönüştürmek için aşağıdaki formülden yararlanılır. • LOC = İşlev Puanı x Programlama Dili LOC Katsayısı YZM 403 - Yazılım Proje Yönetimi

  20. İşlev Puanı (FunctionPoints) – Örnek Proje • Kan tahlili yapan bir laboratuarın aynı şehir içerisinde 5 şubesi vardır. Her şubede yaklaşık 10 adet veri giriş operatörü bulunmaktadır. • Sistem laboratuardaki tahlillerin fiyatlarını tutacaktır. • Hasta bilgileri kaydedilecektir. • Yeni tahliller eklenebilecek, güncelleme yapılabilecektir. • Tahlil sonuçları laboratuar yetkilisi tarafından onaylandıktan sonra görüntülenebilecektir. • İstenen laboratuar tahlillerinin tutarı hesaplanacak ve faturası basılacaktır. • Sonuç raporları basılacaktır. Eğer müşterinin daha önceki kayıtları varsa rapor önceki sonuçları da içerecektir. • Müşteriler sisteme web üzerinden verilecek şifrelerle bağlanarak tahlil no ile sonuçlarını öğrenebileceklerdir. • Sistemin kan analiz cihazıyla arayüzü olacak, sonuçlar direkt olarak cihazdan sisteme aktarılacaktır. • Sistem malzeme yönetimi yapacak, malzeme stok bilgilerini tutacaktır. Her laboratuar ana depodan haftalık malzeme isteği yapacaktır. Laboratuarlardan birinde ana malzeme deposu yer alacak, depoya girişler ve birimlere çıkışlar kaydedilecektir. Her malzeme için kritik stok seviyesinin altına düşen malzemeler için sistem uyarı verecek ve rapor yayınlayacaktır. Birim bazında aylık malzeme raporu yayınlanacaktır. • Laboratuarın ana sunucusu şubelerden birinde yer alacak ve herhangi bir arıza olduğunda sistem diğer şubedeki yedek sunucuya bağlanacak ve oradan işleme kesintisiz devam edecektir. İletişim altyapısında leasedline kullanılacaktır. • Sistemi geliştirecek ekip, Java konusunda ve analiz konularında orta deneyimdedir. İşlevsellik konusunda çok fazla deneyimi yoktur. Bir kaç benzer yönetim bilgi sistemi geliştirmiştir. CASE aracı kullanılacaktır. YZM 403 - Yazılım Proje Yönetimi

  21. Örnek Proje – Üst Düzey Sistem Mimarisi A B E Ana Sunucu Sistem Fiber Optik D Router C Switch Yedek Sunucu YZM 403 - Yazılım Proje Yönetimi

  22. Örnek Proje – Laboratuar Sistemi Web Üzerinden Sorgu Tahlil Bilgileri Tahlil Sonuç Raporu Şifre, Tahlil No Sonuç Karşılaştırmalı Tahlil Sonuç Raporu Hasta Bilgileri Laboratuar Sistemi Fatura Tahlil Onayı Aylık Malzeme Raporu Fatura Bilgileri Malzeme İsteği Kritik Stok Seviyesi Uyarısı Sonuçlar Stok Bilgileri (Depo Giriş/Çıkış) Kritik Stok Seviyesi Raporu YZM 403 - Yazılım Proje Yönetimi Kan analiz cihazı

  23. Örnek Proje – Düzeltilmemiş İşlev Puanı Girdiler: 6 Karmaşık Çıktılar: 6 Karmaşık İç Dosyalar : 4 Orta • Hasta Dosyası • Tahliller dosyası • Faturalar Dosyası • Malzeme Stok Dosyası Dış sorguların sayısı: 1 Orta Dış Arayüz Dosyaları: 1 Orta UFP = Dış Girdiler x W(1) + Dış Çıktılar x W(2) + Dış Sorgular x W(3) + İç Dosyalar x W(4) + Dış Arayüz Dosyaları x W(5) UFP = 6x6 + 6x7+ 4x13 + 1x5 + 1x9 = 144 YZM 403 - Yazılım Proje Yönetimi

  24. Örnek Proje – Düzeltilmiş İşlev Puanı DI = i=1.. 14 Cevapi = 53 FP = UFP x (0,65 + 0,01 x DI) = 144 x (0, 65 + 0,01 x 53) = 169.92 LOC = 46 x 169.92 = 7816,3 YZM 403 - Yazılım Proje Yönetimi

  25. IFPUG İşlev Puanı Analizi • IFPUG - InternationalFunctionPointUsersGroup (1984) • IFPUG uygulama yazılımı geliştirme ve bakım faaliyetlerinin yönetiminde FPA’nın kullanımını teşvik etmektedir. • Resmi IFPUG Ölçüm Uygulama Kılavuzları sırasıyla 1986, 1988, 1990, 1994, 1999, 2004 ve 2009’da yayınlanmıştır. • IFPUG FPA en yaygın olarak kullanılan FSM yöntemidir. YZM 403 - Yazılım Proje Yönetimi

  26. Mark II İşlev Puanı • Charles Symons’a göre; • Bir uygulamanın bileşenlerinin belirlenmesi Albrecht’inFPA’sında zordur, • Albrecht yaklaşımı iç karmaşıklıkla ilgili hiçbir düşünceye sahip değildir, • On dört ayarlama faktörü yeterli değildir. • 1980’lerde İngiltere’de MKII İşlev Puanı geliştirildi. • MK II, kullanıcıya sağlanan işlevselliğin değerinden çok işlevselliği üretmek için gerekli emeğe odaklamak için tasarlanmış bir yöntem. • MK II, uygulamayı mantıksal işlem gruplarına ayrıştırmaktadır. Symons mantıksal bir işlemi; “bilgi almak için bir gereksinim ya da kullanıcıyı ilgilendiren bir olay ile tetiklenen benzersiz bir girdi/işlem/çıktı birleşimi” olarak tanımlar. YZM 403 - Yazılım Proje Yönetimi

  27. Nesma İşlev Puanı • Netherlands Software MetricsUsersAssociation – NESMA, 1989. • NESMA, Avrupa’daki en büyük FPA kullanıcı grubudur. • İşlev Puanı Analizinin uygulanması ile ilgili tanımlar ve ölçüm kılavuzunun ilk versiyonu 1990’da yayınlanmıştır. • Bu yöntem, IFPUG FPA yönteminin ilkelerini temel almaktadır. IFPUG FPA’a benzer olarak işlevselliğin büyüklüğü için, Dış Giriş, Dış Çıkış, Dış Sorgu, İç Mantıksal Dosya ve Dış Arayüz Dosyası gibi işlev türlerini kullanmaktadır. YZM 403 - Yazılım Proje Yönetimi

  28. COSMIC Tam İşlev Puanı • COSMIC - Common Software Measurement International Consortium • Yeni bir işlevsel büyüklük ölçüm yöntemi olarak COSMIC FFP Kasım 1999’da yayınlamıştır. • COSMIC FFP yöntemi, geliştirici ve son kullanıcı bakış açıları olmak üzere birçok ölçüm bakış açısına sahiptir. • Yazılımın işlevsel büyüklüğü, dört İşlevsel Tabanlı Bileşeni temel alarak ölçülmektedir. İşlevsel Tabanlı Bileşenler; Giriş (Entry), Çıkış (Exit), Okuma (Read) ve Yazma (Write) dır. YZM 403 - Yazılım Proje Yönetimi

  29. Emek Kestirimi • Emek (işgücü) genelde adam-saat, adam-gün ya da adam-ay cinsinden ölçülür. • 10 adam-ay: • 10 kişi 1 ay • 1 kişi 10 ay • 2 kişi 5 ay anlamına gelebilir. YZM 403 - Yazılım Proje Yönetimi

  30. Emek Kestirim Yöntemleri Büyüklük Tahmini Yöntemler:Satır Sayısı, FunctionPoints, Geçmiş Proje Verileri SLOC Emek Tahmini • Yöntemler • Geçmiş proje verilerinden yararlanılması • Emek = Büyüklük / Üretim Oranı • Üretim oranı her satır kod, her fonksiyon noktası, her modül için gereken zaman ile ölçülür • Modellerin kullanılması • ConstructiveCost Model (COCOMO) (Boehm) • Putnam’s Model (SLIM) • Use-casePoints • Class Points • UML Points YZM 403 - Yazılım Proje Yönetimi

  31. Emek Kestirim Yöntemleri • Emek kestirim yöntemleri algoritmik ve algoritmik olmayan kestirim yöntemleri olmak üzere iki şekilde sınıflandırılmaktadır. • Algoritmik kestirim yöntemleri • COCOMO (Constructive Costing Model) • Use-CasePoints • ClassPoints • UML Points • Algoritmik olmayan kestirim yöntemleri • Uzman kararı, • Benzerlik ile kestirim, • Büyüklük verisi kullanarak kıyaslama. YZM 403 - Yazılım Proje Yönetimi

  32. Algoritmik Kestirim Yöntemleri • Bu yöntemler, emek kestirimi için matematiksel modeller (matematiksel formüller) kullanılırlar. • Bu tür modellerde geçmişe ait veriler, kod satır sayısı, fonksiyon sayısı vb. istatistikler ile yazılım projelerine doğrudan etki eden çevresel ve teknik faktörler girdi olarak verilir. Model belirli  bir doğruluk aralığında sonuç üretir. • Bu tür modellerin içinde bulunan ortama göre bazı parametrelerinin "kalibre" edilmesi gerekmektedir. YZM 403 - Yazılım Proje Yönetimi

  33. COCOMO (Constructive Costing Model) • COCOMO, BarryBoehm tarafından geliştirilmiş algoritmik bir yazılım maliyet kestirim yöntemidir. • Bu yöntem, geçmiş proje verileri ve mevcut proje özelliklerinden türetilen parametreler ile beraber temel bir regresyon formülü kullanır. • Yapılacak hesapların kapsamları açısından basit, orta ve detaylı olmak üzere üç değişik modelden oluşur. Ayrıca bu modellerde kullanılacak problemler, “organik, yarı ayrık ve gömülü sınıflar” altında toplanmıştır. YZM 403 - Yazılım Proje Yönetimi

  34. COCOMO (Constructive Costing Model) devam… • Orijinal COCOMO modeli yaygın bir merak konusu uyandırdı. • Herkese açık bir modeldir. Bunun anlamı denklemlerin, varsayımların, tanımların herkese açık olmasıdır. • Orijinal COCOMO modeli 63 proje çalışmasına ve kestirme modelleri sıradüzeni temellerine dayanır. COCOMO Modeli İş Gücü (Emek) Satır Sayısı Zaman YZM 403 - Yazılım Proje Yönetimi

  35. COCOMO - Proje Sınıfları • Ayrık Projeler; • Boyutları küçük, • Deneyimli personel tarafından gerçekleştirilmiş, • LAN üzerinde çalışan, insan kaynakları yönetim sistemi gibi projeler... • Yarı Ayrık Projeler: • Hem bilgi boyutu, hem donanım sürme boyutu olan projeler… • Gömülü Projeler: • Donanım sürmeyi hedefleyen projeler (pilotsuz uçağı süren yazılım - donanım kısıtları yüksek) YZM 403 - Yazılım Proje Yönetimi

  36. COCOMO (Constructive Costing Model) devam… • COCOMO bu model ve proje sınıfı saptamalarından sonra ortaya çıkan formüllerle tahmin hesaplama yolunu önerir. Basit COCOMO Modeli İçin Emek ve Süre Formülleri • Basit COCOMO modeli, küçük-orta boy projeler için hızlı kestirim yapmak amacıyla kullanılır. YZM 403 - Yazılım Proje Yönetimi

  37. COCOMO (Constructive Costing Model) devam… • Orta COCOMO modeli sistemin (güvenilirlik, veri tabanı büyüklüğü, işletme ve kayıt sınırlandırmaları, personel özellikleri ve kullanılan yazılım araçları gibi) diğer özelliklerinin hesaba katılması amaçlanmıştır. Orta COCOMO Modeli İçin Emek Formülleri Belirli bir dizi özelliğin, proje açısından etkileri ayrı ayrı ağırlandırılarak katsayılar ortaya çıkarılır. YZM 403 - Yazılım Proje Yönetimi

  38. COCOMO (Constructive Costing Model) devam… • Emek Ayarlama Faktörü için sözü geçen etkenleri dört grupta toplayarak, yandaki tabloda görüldüğü gibi sıralayabiliriz. • EAF (Emek Ayarlama Faktörü) orta ve detaylı seviyede kullanılır. • Detaylı COCOMO modeli projenin evrelerine bağlı olarak süreç içinde değişiklikleri hesaba katarak arada bir kestirim hesaplamasını önerir. YZM 403 - Yazılım Proje Yönetimi

  39. COCOMO – Emek Ayarlama Faktörü • Ürün Özellikleri • RELY: Yazılımın güvenirliği. • DATA: Veritabanının büyüklüğü. • CPLX: Karmaşıklığı. • Bilgisayar Özellikleri • TIME: İşletim zamanı kısıtı. • STOR: Ana bellek kısıtı • VIRT: Bilgisayar platform değişim olasılığı. Örn; bellek ve disk kapasitesi artırımı, CPU upgrade… • TURN: Bilgisayar iş geri dönüş zamanı. Örn; hata düzeltme süresi. YZM 403 - Yazılım Proje Yönetimi

  40. COCOMO – Emek Ayarlama Faktörü (devam…) • Personel Özellikleri • ACAP: Analist yeteneği. Deneyim, birlikte çalışabilirlik. • AEXP: Uygulama deneyimi. Proje ekibinin ortalama tecrübesi. • PCAP: Programcı yeteneği. • VEXP: Bilgisayar platformu deneyimi. Proje ekibinin geliştirilecek platformu tanıma oranı. • LEXP: Programlama dili deneyimi. • Proje Özellikleri • MODP: Modern programlama teknikleri. Örn; Yapısal programlama, görsel programlama, yeniden kullanılabilirlik. • TOOL: Yazılım geliştirme araçları kullanımı. Örn; CASE araçları, metin düzenleyiciler, ortam yönetim araçları • SCED: Zaman kısıtı. YZM 403 - Yazılım Proje Yönetimi

  41. Örnek: Laboratuar Sistemi için COCOMO ile Emek Kestirimi YZM 403 - Yazılım Proje Yönetimi

  42. Örnek: Laboratuar Sistemi için COCOMO ile Emek Kestirimi (devam…) • Emek = 3.0 x (KLOC)1.12 x EAF • Emek = 3.0 x (7816)1.12 x 1,23 = 36,9 adam-ay • Takvim= 2.5 x Emek 0,38= 2.5 x 36,90,38 = 9,84 ay (Geliştirme Zamanı) • N = Emek / Geliştirme Zamanı → (N: ortalama personel sayısı) • N = 36,9 / 9,84 = 3,75 – 4 kişi YZM 403 - Yazılım Proje Yönetimi

  43. Use-Case Puanı (Use-CasePoints - UCP) • Use-Case Points (UCP) yaklaşımı, bir yazılım proje emek kestirim yöntemi olarak Karner tarafından ortaya atılmıştır. • Nesneye-tabanlı yazılım üretiminde, use-case’ler işlevsel gereksinimleri tanımlar. YZM 403 - Yazılım Proje Yönetimi

  44. Use-Case Puanı (Use-CasePoints - UCP)(devam…) • Use-Case Puanı (UCP) sistemin use-case analizi ile elde edilebilir: • Use-case analizinin birinci adımı aktörlerin sınıflandırılmasıdır. Öncelikle toplam Düzeltilmemiş Aktör Ağırlığı (UnadjustedActorWeights - UAW) hesaplanmaktadır. YZM 403 - Yazılım Proje Yönetimi

  45. Use-Case Puanı (Use-CasePoints - UCP)(devam…) • Use-case analizinin ikinci adımı use-case’lerin sınıflandırılmasıdır. Düzeltilmemiş Use-Case Ağırlığını (Unadjusted Use-Case Weights - UUCW) elde etmek için: • Use-case analizinin üçüncü adımı Düzeltilmemiş Use-Case Puanı (Unadjusted Use-Case Points - UUCP) nın hesaplanmasıdır: YZM 403 - Yazılım Proje Yönetimi

  46. Use-Case Puanı (Use-CasePoints - UCP)(devam…) • Use-case analizinin dördüncü adımı Teknik Karmaşıklık Faktörünün hesaplanmasıdır. YZM 403 - Yazılım Proje Yönetimi

  47. Use-Case Puanı (Use-CasePoints - UCP) (devam…) • Use-case analizinin beşinci adımı Çevresel Karmaşıklık Faktörünün hesaplanmasıdır. • Use-case analizinin altıncı adımı Use-Case Puanının hesaplanmasıdır: • Use-case analizinin son adımı Emeğin hesaplanmasıdır: YZM 403 - Yazılım Proje Yönetimi

  48. YZM 403 - Yazılım Proje Yönetimi

  49. Sınıf Puanı (ClassPoints - CP) • Sınıf diyagramları, geliştirilen sistemin mantıksal blokları olan sınıf hiyerarşini ve hedef sistemin yapısal işlevselliğini içerir. • Sınıf Puanı yaklaşımı, 1998’de ortaya atılmıştır. Bu yaklaşım, sayısal hesaplamaya dayanarak bir sistemin iç niteliklerini temsil eden işlev puanı analiz yaklaşımını temel almaktadır. • CP1 ve CP2 olmak üzere iki ölçüm ortaya atılmıştır. YZM 403 - Yazılım Proje Yönetimi

  50. Sınıf Puanı (ClassPoints - CP)(devam…) • Kullanıcı Sınıflarının Belirlenmesi ve Sınıflandırılması • Tasarım dokümanı analiz edilirken 4 tür sistem bileşeni kullanılır: • Problem Alan Türü (Problem Domain Type – PDT), • İnsan Etkileşim Türü (Human Interaction Type – HIT), • Veri Yönetim Türü (Data Management Type), • Görev Yönetim Türü (Task Management Type – TMT). • Sınıfların Karmaşıklık Düzeylerinin Belirlenmesi • CP1 içinde her bir sınıfın karmaşıklık düzeyi iki ölçüt ile belirlenmektedir: • Dış Metotların Sayısı (Number of External Methods – NEM), • Servis İsteklerinin Sayısı (Number of Services Requested – NSR) • CP2 içinde, her bir sınıfın karmaşıklık düzeyini değerlendirmek üzere Niteliklerin Sayısı (Number Of Attributes – NOA) dikkate alınmaktadır. YZM 403 - Yazılım Proje Yönetimi

More Related