<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Çevik Yöntemlerde Cosmic İşlev Puanı ve Hikaye Puanının Birlikte Kullanımı</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Anahtar Kelimeler: Hikaye Puanı</institution>
          ,
          <addr-line>SP, FSM, COSMIC İşlev Puanı, CFP, ISO 19761, Çevik Yöntemler, Scrum, Kanban, Efor Tahminleme</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Bahçeşehir Üniversitesi</institution>
          ,
          <addr-line>İstanbul</addr-line>
          ,
          <country country="TR">Türkiye</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Özyeğin Üniversitesi</institution>
          ,
          <addr-line>İstanbul</addr-line>
          ,
          <country country="TR">Türkiye</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>TURKCELL</institution>
          ,
          <addr-line>İstanbul</addr-line>
          ,
          <country country="TR">Türkiye</country>
        </aff>
      </contrib-group>
      <fpage>378</fpage>
      <lpage>390</lpage>
      <abstract>
        <p>Özet. Hikaye Puanı (SP: Story Point), Scrum ve Kanban gibi çevik yöntemlerde kullanılan en yaygın metriklerden birisidir. Subjektif bir metrik olsa da kullanışlı ve basit olması nedeniyle çevik ekiplerin birikim listelerinde bulunan kullanıcı hikayelerinin uygun bölümlere ayrılmasında, maliyet tahminlemesinde ve ekiplerin hız ve kapasitelerinin hesaplanmasında yaygın bir şekilde kullanılmaktadır. Cosmic işlev puanı (CFP: Cosmic Function Point) ise yazılım işlevsel kapsam büyüklüğünün ölçümünde kullanılan ve aynı zamanda bir ISO standardı da (ISO 19761) olan objektif bir metriktir. Bu çalışmada Türkiye'nin en büyük teknoloji ve iletişim hizmetleri sağlayıcı firmalarından birinin çevik yazılım geliştirme prensiplerine göre çalışırken hem Hikaye Puanı hem de CFP metriklerini birlikte kullanım deneyimleri paylaşılmış; iki metriğin benzerlikleri ve farklılıkları irdelenmiştir. Sonuç olarak SP metriğinin kapsam boyutlandırma toplantıları sırasında kullanıcı hikayelerinin çevik mantıkla uygun kapsam büyüklüğüne bölünmesinde daha etkin bir araç olduğu, CFP'nin ise çevik ekiplerin ürettiği çıktıların miktarının ve kalitesinin zaman içindeki trendinin ölçülmesinde ve yine çevik ortamlarda dış kaynak hak edişlerinin belirlenmesinde daha başarılı sonuçlar verdiği sonucuna varılmıştır. Ek olarak CFP'nin Efor tahminlemesinde kullanılıp kullanılamayacağı yönünde bir doğrusal regresyon modeli için ön analiz yapılmış ve ilk sonuçlar paylaşılmıştır.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Using Cosmic Funcion Points and Story Points Together
in Agile Frameworks
1</p>
      <p>
        Giriş
Çevik Çerçeveler günümüzde yazılım sektöründe yaygın olarak kullanılmaktadır.
Çevik Çerçeveler arasında da en çok Scrum [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] ve Kanban [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] öne çıkmaktadır [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Her
iki yöntemde de yapılan işin iyileştirilebilmesi için mevcut durumun
değerlendirilebilmesi gerekir. Bu değerlendirmenin yapılabilmesi için de mevcut durumun metriklerle
ölçülmesi gerekir. Ölçülecek temel unsur geliştirilen yazılım olduğunda ise iki ana
metrik bulunur: Hikaye Puanı ve CFP.
      </p>
      <p>Hikaye Puanı ve CFP metriklerinin ikisi de yazılımı rakamsal bir büyüklükle ifade
ettiğinden sıklıkla karşılaştırılmışlardır. Hikaye Puanının bir standart olmaması ve
sezgisel olarak hesaplanması nedeni ile uygulayıcılar arasında yanlış anlamalara ve
niceliksel olarak farklılıklara yol açabilmesi göz önünde bulundurularak, karşılaştırmalarda
CFP’nin Scrum ile birlikte kullanılan Hikaye Puanı’nı ikame edip edemeyeceği
tartışılmaktadır [17][18][19].</p>
      <p>Bu çalışmada Hikaye ve CFP metriklerinin birbirini ikame ederek Çevik Yazılım
Geliştirme metodunda yalnızca birinin kullanıldığı örneklerin aksine sürecin farklı
noktalarında faydalar sağlayarak iki metriğin birlikte kullanılabileceği bir örnek deneyim
paylaşılmaktadır. Hikaye Puanı ve CFP metriklerinin kullanıldığı yerler, benzerlikler
ve farklılıklar incelenmiş ve Hikaye Puanı ile efor tahminlemesinin nasıl
yapılabileceğine dair bir ön çalışma yapılmıştır.</p>
      <p>Çalışmanın yapıldığı takım Çevik Çerçevelerden Genişletilmiş Kanban (Extended
Kanban) uygulamaktadır. Kanban’ın temel prensiplerini ve bu prensiplere ek olarak
Scrum’da yer alan rolleri ve toplantıları (Günlük Toplantı, Kapsam Boyutlandırma
Toplantıları) almıştır.</p>
      <p>Takımın benimsediği prensipler, roller ve CFP hakkında genel bilgiler aşağıda
verilmiştir:
1.1</p>
      <p>
        Kanban
Kanban üretim alanında 1950’lerde ortaya çıkan [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], yalın üretim felsefesi ile birlikte
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] kaliteyi artırmayı ve Ürün Tamamlanma Süresi’ni (Lead Time) kısaltmayı
hedefleyen bir metoddur. 2000’li yıllardan itibaren Teknoloji üretim süreçlerinde de çevik
çerçevelerden biri olarak uygulanmaya başlanmıştır [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Kanban’ın zorunlu kıldığı çok az
sayıda kuralı vardır. Sürecin diğer tüm detaylarına ilişkin uygulamaların hemen hemen
tamamı takım insiyatifine bırakılmıştır.
Ürün Tamamlanma Süresi Ölçümü
Kanban’ın diğer çevik metodlarda olduğu gibi dayandığı temel ilkeler deneyimlemek,
ölçmek ve sürekli iyileşmedir. Ürün Tamamlanma Süresi işlerin takım tarafından ele
alınmasıyla başlayarak daha önce anlaşılan Tamamlanma Kriterleri’nin hepsinin
gerçekleştirilmesiyle biter. Kanban çerçevesinde Ürün Tamamlanma Süresinin kısalması
beklenir [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>Görselleştirme</title>
      <p>
        Kanbanda işin tamamlanana kadar geçeceği aşamaları ve her aşamada ne kadar iş
bulunduğunu görselleştiren bir tahta kullanılır. Bu tahta plastik, karatahta ya da dijital bir
ekran olabilir [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
İş Çekme Prensibi ve Aktif İş (WIP) kısıtı
Kanban’ın üçünü kuralı ise bir istasyonda tamamlanan işin bir sonraki istasyonun
üyelerince doğru zamanda kendileri tarafından çekilmesidir. Bu kurala göre işler kimseye
atanmaz, herkes kendisi çeker. Bir kişinin işi çekebilmesi için gerekli ön koşul ise o
kişinin üzerindeki işlerin Aktif İş kısıtında belirtilen sayıdan daha az olmasıdır.
Genellikle herkesin aynı anda tek bir iş yapacağı ön görülür ve kişilerin iş kısıtları 1 olarak
belirlenir. Bir istasyonda görevli kaç kişi varsa o istasyonda en fazla o kadar iş
bulunabilir. Bu prensibin temel nedeni ise bir kişinin üzerine alacağı birden fazla iş olsa bile
en fazla biriyle ilgileneceği ve diğer işlerini beklemeye alacağıdır. Kanban’da da bu
durum görsel hale getirilir, beklemeye alınan işler tahta üzerinde de gösterilir [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
1.2
      </p>
      <p>
        Roller
Scrum’da çevik ekip Ürün Sahibi (Product Owner), bir Scrum Yöneticisi (Scrum
Master) ve Geliştirme Takımı’ndan oluşmaktadır [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        Kanban Ekibi’nde Scrum’da olduğu şekilde belirlenen roller yoktur. Yine de çevik
takımlardaki gibi Ürün Sahibi, Kanban Yöneticisi ve Geliştirme Takımı’nın birlikte
Kanban Takımı’nı oluşturması yaygındır [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
1.3
      </p>
      <p>
        Toplantılar
Scrum çerçevesine göre çevik takımın gerçekleştirmesi gereken tekrarlayan toplantılar
bulunur. Bu toplantılar; Sprint Planlama Toplantısı, Günlük Toplantı (Daily), Sprint
Değerlendirme Toplantısı (Review) ve Sprint İyileştirme Toplantısı’dır
(Retrospective). Çerçevede zorunlu kılınmamakla birlikte Kapsam Boyutlandırma (Grooming &amp;
Sizing / Refining) toplantıları da yapılabilmektedir [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        Scrum yaklaşımında yazılım geliştirme sürecinde işler birikim listesinde öncelikleri
belli bir şekilde bekler. İşler bu listeden Geliştirme Takımı tarafından çekilir, “Sprint”e
dahil edilir. “Sprint” boyunca “Tamamlanma Kriterleri”ne (Definiton of Done) göre
işlerin anlaşılan tüm adımları tamamlanır. İşlerin bir sprint içerisinde
tamamlanabilmesi için işlerin yaratacağı değere göre küçük parçalara ayrılması ve önceliklerine göre
sıralanması gerekir. Bu sebeple Scrum için işlerin küçük parçalar haline getirilmesi son
derece önemlidir [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>Günlük Toplantı</title>
      <p>
        Çevik çerçevelerin önemli bir özelliği iş yapan kişiler arasındaki iletişimi artırmasıdır.
Bunu sağlamanın en Pratik yolu ise Günlük toplantılardır. 15 dakikayı geçmeyen bu
toplantılarda her üye tek tek söz alarak o gün yapacağı işleri ve varsa karşılaştığı
engelleri tüm takıma iletir. Bu sayede tüm takım her üyenin yapacağı işlerden ve karşılaştığı
engellerden en hızlı şekilde haberdar olur [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
    </sec>
    <sec id="sec-4">
      <title>Kapsam Boyutlandırma Toplantıları</title>
      <p>
        İşlerin küçültülmesi için yaygın olarak uygulanan metot “Kapsam Boyutlandırma”
(“Refining”) toplantılarıdır (Eski adıyla “Grooming &amp; Sizing”). Bu toplantılarda
Birikim Listesi’ndeki işlerin bir Sprint’e sığacak kadar küçük hale getirilmesi sağlanır [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
Kapsam Boyutlandırma toplantılarında yaygın olarak kullanılan yöntem ise “Poker
Planlama” (Planning Poker) metodu ve Hikaye Puanı’dır. Hikaye Puanları genellikle
Fibonacci dizisindeki sayılardan seçilir [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Asıl amaç Sprint içinde tamamlanmak
üzere birikim listesinden alınacak işlerin belirli bir büyüklüğün üzerinde olmamasının
sağlanmasıdır. İşin belirli bir büyüklüğün üzerinde olması durumunda ise iş daha küçük
parçalara küçültülür.
      </p>
      <p>
        Kapsam Boyutlandırma toplantılarında tüm takım yer alır [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Takımın adım adım
yaptığı oylama sonrasında ortak bir noktada işin Hikaye Puanı cinsinden büyüklüğü
belirlenmiş olur [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
1.4
      </p>
      <p>
        Yazılım Büyüklük Ölçümü ve CFP
Fonksiyonel boyut ölçümü (FSM) bir yazılım sisteminin işlevselliğinin ölçümü olarak
tanımlanabilir. Veri tabanı sistemlerinde bilgi getirme, kaydetme veya arayüzler
aracılığı ile harici sistemlerde bilgi yayınlanması bu bahsedilen işlevselliğe örnek olabilir.
FSM Yazılım endüstrisinde Albrecht'in FPA yöntemi ile ilk tanıtımından bu yana
kullanılmaktadır. Son 30 yılda orijinal yöntemden başka birçok yöntem de türetilmiştir
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ][
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>
        FSM yöntemlerinden biri olan COSMIC diğer FSM yöntemlerine göre yeni bir
yöntemdir. İlk sürümü 1998 yılında yayınlanmıştır [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
      <p>
        COSMIC kısaca bir ölçüm sürecidir. Bu süreç üç temel aşamadan oluşur. Bunlar
sırasıyla Ölçüm Stratejisi, Eşleme ve Ölçme aşamalarıdır. Birinci aşamadaki amaç,
kapsam, ayrıntı düzeyi ve işlevsel kullanıcıların belirlenmesidir. Eşleme aşamasındaki
amaç, işlevsel süreçler, veri grupları ve veri özniteliklerinin tanımlanmasıdır. Son
aşamadaki amaç ise veri hareketlerini tanımlanması ve bir önceki aşamada tanımlanan tüm
fonksiyonel süreçlere ölçüm fonksiyonunun uygulamasıdır [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Son aşamanın çıktısı
da CFP (Cosmic Function Point) biriminde kapsamın fonksiyonel büyüklüğüdür [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
2
      </p>
      <sec id="sec-4-1">
        <title>Vaka Çalışması</title>
        <p>Türkiye’nin en büyük Teknoloji ve İletişim Hizmetleri sağlayıcısı firmalarından biri
yazılım geliştirme süreçlerini çevik yaklaşımlara göre yeniden şekillendirmektedir Bu
çalışma kapsamında ise bu şirketin Dijital Öğrenim Çözümleri üzerinde çalışan bir ürün
geliştirme ekibinin çevik dönüşüm sırasında Hikaye Puanı ve Cosmic İşlev Puan
metriklerini nasıl kullandığı irdelenmektedir.
2.1</p>
        <p>Dijital Öğrenim Çözümleri Ekibi
Dijital Öğrenim Çözümleri alanında yazılım geliştiren takım çevik çerçeveler arasında
Scrum ve Kanban’ı inceledikten Scrum’daki bazı prensipleri de uygulamakla birlikte
Kanban’a karar vermiştir.</p>
        <p>Kanban takımı bir Ürün Sahibi, bir Kanban Yöneticisi ve Geliştirme Takımı’ndan
oluşmaktadır.</p>
        <p>Geliştirme Takımı üyeleri arasında Teknoloji ve İletişim Hizmet sağlayıcısı şirket
personeli analistler, yazılımcılar, şirkete yazılım geliştirme hizmeti sağlayan bir firmanın
çalışanı olan analistler, yazılımcılar ve test uzmanları bulunmaktadır.</p>
        <p>Çevik Ekibin bu dönüşüm ile temel hedefleri kaliteyi artırmak, işlerin tamamlanma
süresini düşürmek, yaratılan değeri en yüksek seviyeye çıkarmak ve aynı zamanda ekip
motivasyonunu da üst seviyeye çıkarmaktır. Takım Scrum çerçevesinde bulunan rollere
göre ekibi oluşturmuş, Günlük Rutinleri, Kapsam Boyutlandırma toplantılarını almış,
Kanban’ın Ürün Tamamlanma Süresi Ölçümü, Görselleştirme ve Aktif İş Kısıtı’nı
benimsemiştir.</p>
        <p>Yapılacak işler önce Ürün Sahibi tarafından Kapsam Boyutlandırma toplantılarına
getirilmekte, bu toplantıda belirlenen seviyenin altında bir küçüklüğü varsa birikim
listesine alınmaktadır. İstasyonların her birinde Aktif İş Kısıtları bulunur. İstasyonlardaki
işler biterek Aktif İş Kısıtında bir boşluk olduğunda ise yeni iş çekilmektedir. Ekibin
istasyonları “Analiz”, “Geliştirme”, “Test”, Kabul Testi” ve “Devreye Alım”dır. Tüm
bu istasyonların ardından işler “Canlı” istasyonuna alınır.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Hikaye Puanı Kullanımı Takım, Hikaye Puanını Kapsam Boyutlandırma toplantı’larında kullanarak gelen işleri kısa sürelerde tamamlanabilecek şekilde küçük parçalara ayırmayı hedefler. Bu yüzden</title>
      <p>takımın belirlediği eşik “20 Hikaye Puanı”dır. 20 Hikaye Puanı’nın üzerindeki işlerin
senaryoları yeniden değerlendirilmeli ve küçültülmelidir.</p>
    </sec>
    <sec id="sec-6">
      <title>CFP Kullanımı</title>
      <p>
        Üretim
Takım CFP’yi işin büyüklüğünün ölçümünde kullanmaktadır. CFP işin fonksiyonel
büyüklüğünün değerlendirilmesinde uluslararası bir standart olması ile de kendini
kanıtlamış bir metot olarak üstündür [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Çevik ekipler için ise performansın takibinde
üretim değeri önemli bir yere sahiptir. Dijital Öğrenim Çözümleri Ekibi de üretimi takip
etmek için CFP değerini kullanır.
      </p>
      <p>
        Analiz sırasında istenen fonksiyonlar birer kullanım senaryosu halinde tek tek
dokümante edilir [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Bu sırada fonksiyonel değişiklikler de yazılır ve her senaryonun her
adımı için CFP değerleri belirlenir. Senaryoların CFP değerlerinin toplamı da işin
toplam CFP değerini gösterir. İşlerin büyüklüğü bu şekilde hesaplanır. Ekip dikkate aldığı
dönem için (bu bir yinelemede takvim ayı da olabilir) canlıya alınan işlerin toplam CFP
değerini toplam üretim miktarı olarak kabul eder.
      </p>
    </sec>
    <sec id="sec-7">
      <title>CFP – Problem Yoğunluk</title>
      <p>CFP’nin bir başka kullanım noktası ile kalitenin takibi için CFP – Problem Yoğunluk
metriğidir. Bu metrik, canlı uygulamada geliştirilen üründe bir periyodda ortaya çıkan
problem sayısının üretilen CFP’ye bölünmesidir. Örneğin bir aylık bir sürede ortaya 10
problem çıkıyor ve bu süre içinde 100 CFP’lik bir üretim canlıya alınıyorsa CFP –
Problem Yoğunluk Metriği %10’dur. Bu metriğin en önemli avantajı yapılan işin
büyüklüğünü dikkate almasıdır. Üzerinde çalışılan iş ne kadar büyükse o kod parçasından
ortaya çıkacak problem sayısı da o kadar fazla olması beklenir. Üzerinde çalışılan işin
büyüklüğünün belirlenmesinde ise canlıya alınan iş sayısı, kod satır sayısı gibi
metriklerdense CFP daha objektif ve geçerlidir. CFP – Problem Yoğunluk metriğinin olumsuz
yanı ise dikkate alınan dönem içerisinde tesadüfen üretim yapılması ya da problem
sayısına bağlı olarak metriğin çok düşük ya da çok yüksek değerler alma ihtimalidir. Bu
riski de ortadan kaldırmak için Kümülatif CFP – Problem Yoğunluk metriği dikkate
alınabilir. Bu yeni metriğin tek farkı bir dönem için değil, geçmişten başlayarak (son 6
ay gibi) daha uzun bir dönemi değerlendirmektir. Aylık dalgalanmalar görülmeyecek,
kalitenin gidişatı daha iyi takip edilebilecektir.</p>
    </sec>
    <sec id="sec-8">
      <title>Yazılım Geliştirme Hizmet Ödemeleri</title>
      <p>
        Yazılım geliştirme süreçlerinde danışmanlık hak ediş ödemeleri anahtar bir noktadır.
Danışmanlara işe ayırdıkları zamana bağlı olarak ödeme yapılması çok yaygındır ancak
kişilerin fatura kesilen saat boyunca işe ne derece odaklı şekilde çalıştığı her ne kadar
yeni teknolojiler kullanılsa da kesin olarak tespit edilemez. Özellikle danışmanların
uzaktan çalıştığı durumlarda bu konu daha büyük bir sorundur. Çevik yazılım
geliştirme ilkeleri güven, iletişim, kalite ve ölçüm gibi değerlere dayanırken uzaktan çalışan
yazılım danışmanlarının ekranlarını izleme ve daha fazla kontrol çabaları bu değerlerle
çelişir. Bu konuda kalıcı çözüm ise danışmana ayırdığı saat cinsinden değil, üretilen
çıktı, kalite gibi değerler üzerinden ödeme yapılması olabilir [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Üzerinde
çalıştığımız Dijital Öğrenim Çözümleri Ekibi de danışmanlara her ay sonunda o ay içerisinde
canlıya alınan işlerin toplam CFP değeri kadar ödeme yapmaktadır. Danışmanlık
hizmeti içerisinde analiz, geliştirme ve test işlerinde her CFP değerine karşılık gelecek
toplam tutarlar belirlenmiş ve sözleşme ile kayıt altına alınmıştır. Bu sayede danışman
firmada bu konuda çalışan kişi sayısı ve çalışma süresinin yerine yalnızca üretim
miktarı dikkate alınmaktadır. Bununla birlikte aşağıda daha detaylı değinilecek olan CFP –
Problem Yoğunluk metriğinin de sözleşmeye bir ceza unsuru olarak dahil edilmesi
sayesinde üretimin kalitesi de dikkate alınmıştır.
3
      </p>
      <sec id="sec-8-1">
        <title>CFP – Hikaye Puanı Karşılaştırması</title>
        <p>Hikaye Puanı yazılımın büyüklüğünün ölçümünde nicel bir değer taşıması açısından
CFP ile ortak noktalar barındırmaktadır ve bu yüzden CFP ile Hikaye Puanı
karşılaştırılabilir. Hikaye Puanı ve CFP araçlarının faydalı olduğu ve tercih edilebileceği
noktalar aşağıdaki tabloda belirtilmiştir:</p>
        <p>Tablo 1. CFP – Hikaye Puanı Karşılaştırması
Amaç
İş Parçalama
ve Küçültme</p>
      </sec>
    </sec>
    <sec id="sec-9">
      <title>Hikaye Puanı CFP</title>
    </sec>
    <sec id="sec-10">
      <title>Açıklama</title>
    </sec>
    <sec id="sec-11">
      <title>Uygun</title>
      <p>Kısmi
Uygun
Kısmi
Uygun</p>
      <p>Hikaye Puanı, işin anlık
büyüklüğünün belirlenmesinde CFP’ye göre
daha hızlıdır. Ancak kullanıcı
hikayelerinden CFP olarak tahmini
büyüklük öngörülebileceği için anlık
büyüklük belirlemede CFP de
kullanılabilir [20].</p>
      <p>Hikaye Puanı ile kesinlik içermeyen
ön tahminleme yapılabilir, CFP’ye
göre Planlama daha fazla zaman
gerektirir.
İşin büyüklük ölçümünde CFP daha
net ve objektif bir metriktir
Hikaye Puanı öznel ve ekibe
özeldir. Farklı ekiplerin karşılaştırılması
için ancak CFP kullanılabilir.
Ekiplerin hikaye puanı üretimler
hem öznel hem de zaman içinde
değişkendir, CFP ise işin
büyüklüğünde daha kesindir
CFP aracı kullanılarak CFP –
Problem Yoğunluk değeri hesaplanabilir
ve kalite bu yolla takip edilebilir.
Planlama</p>
    </sec>
    <sec id="sec-12">
      <title>Uygun</title>
      <p>Büyüklük
Ölçümü
İşlerin
Karşılaştırılması
Yazılım
Geliştirme
Hizmet Satın
Alması
Kalite</p>
    </sec>
    <sec id="sec-13">
      <title>Kısmi Uygun</title>
    </sec>
    <sec id="sec-14">
      <title>Uygun Değil</title>
    </sec>
    <sec id="sec-15">
      <title>Uygun</title>
    </sec>
    <sec id="sec-16">
      <title>Uygun</title>
    </sec>
    <sec id="sec-17">
      <title>Uygun Değil</title>
    </sec>
    <sec id="sec-18">
      <title>Uygun</title>
    </sec>
    <sec id="sec-19">
      <title>Uygun Değil</title>
    </sec>
    <sec id="sec-20">
      <title>Uygun</title>
      <sec id="sec-20-1">
        <title>CFP ile Efor Tahmini</title>
        <p>İşin büyüklüğünün ölçümünde ve ekibin üretim miktarının takibinde CFP objektif ve
daha üstün bir metoddur. CFP metodu; işin büyüklüğünü daha iyi tarif ettiğinden işin
yapılması için gerekli zamanı daha iyi tahminleyebilir [16].</p>
        <p>Bu bölümde Dijital Öğrenim Çözümleri ekibinin kısıtlı sayıda verisiyile CFP’nin işe
harcanan eforu ne kadar iyi tahmin edebildiğini inceleyeceğiz.
4.1
Örnek Veriler</p>
        <p>Tablo 2. İşlerin CFP ve Harcanan Toplam Efor Değerleri
Dijital Öğrenim Çözümleri ekibinin verilerine dayanarak CFP bilgisiyle Efor tahmini
yapılması için Basit Doğrusal Regresyon Modeli [15] denenmiştir. Basit Doğrusal
Regresyon Modeli Efor tahminlenirken her iş için geçerli olan sabit maliyetleri tarif eden
bir β0 değerinden ve CFP arttıkça artan β1 değerinden oluşmaktadır:</p>
        <p>Efor = β0 + (β1 * CFP) (1)</p>
        <p>Eldeki veriler modele uygulandığında β0 = 1.8 ve β1 = 0.92 olarak hesaplanmış ve
eğim, yani β1 ile ilgili p-değeri 0.00014 olarak bulunmuştur . Bu değerler kullanılarak
eldeki veriler tahmin edilmeye çalışıldığında tahminler Tablo 2’de iletilmiştir:
Tablo 3. İşlerin CFP, Harcanan Toplam Efor ve Tahmin Edilen Toplam Efor Değerleri</p>
        <p>Dijital Öğrenim Çözümleri CFP ve Efor Bilgileri
1
2
3
4
5 6
Efor (Gün)
7</p>
        <p>8
CFP
9
10
11
12
Şekil. 1. Dijital Öğrenim Çözümleri CFP ve Efor Bilgileri Görseli
4.3</p>
        <p>Basit Doğrusal Regresyon Modelinin Değerlendirmesi
Model R Square değeriyle güçlü görünmekle birlikte veriler bir grafiğe yansıtıldığında
verilerin farklı açılardan da incelenmesi gerektiği görülmektedir.
Grup 2
Grup 1</p>
        <p>Dijital Öğrenim Çözümleri
0
10
20
40
50</p>
        <p>60
30</p>
        <p>CFP
Şekil. 2. İşlerin Efor ve CFP Eksenlerinde Dağılımı</p>
        <p>Bu grafikte Dijital Öğrenim Çözümleri ekibinin verileri Efor ve CFP değerleriyle
görünmektedir. Grafik, doğrusal bir regresyon modelinin tam olarak uygun olmadığı
şeklinde yorumlanabilir. Bunun yerine iki ayrı veri grubu ve dolayısıyla iki ayrı
modelin bulunması grafikle daha fazla örtüşmektedir.</p>
        <p>Veriler grafikteki çizgilerine göre gruplandıklarında aşağıdaki şekilde 2 ayrı
modelde görselleştirilebilir.</p>
        <p>Gruplanmış Veriler
0
10
20
30
40</p>
        <p>50</p>
        <p>CFP
Şekil. 3. Veriler gruplandığında iki ayrı tahmin modelinin geçerli olma ihtimali ortaya çıkıyor</p>
        <p>Verilerin gruplanması halinde iki ayrı modele daha fazla uyduğu tespit edilmiştir.
İlk grup basit doğrusal bir modele uymaktadır.</p>
        <p>Efor = β0 + (β1 * CFP) (2)
β0 = 1.7 ve β1 = 0.2795; β1 için p-değeri 0.09 olarak bulunmuştur.
İkinci grup ise doğrusal olmayan bir regresyon modeli ile uyumluluk göstermektedir.
Burada test edilen model:</p>
        <p>Efor = (β0 * CFP) /(β1 + CFP) (3)
β0 = 64.2943 ve β1 = 22.6662; β0 ve β1 için p-değerleri sırasıyla 0.0009 ve 0.012
olarak bulunmuştur.
Bununla beraber verilerin bu şekilde gruplanmasına yol açabilecek bir özellik tespit
edilmemiştir. Ancak bu iki modelden ilki CFP değeri ile eforun doğrusal bir ilişki içinde
olduğu, yani her birim CFP için eforun aynı oranda arttığı işlere (örneğin dair eforu
tahmin etmek için daha uygun olabilecekken ikinci model CFP değeri arttıkça karşılık
gelen eforun azalarak arttığı (adeta bir öğrenme etkisinin olduğu) işler (örneğin
yazılımcının daha önce üzerinde çalışmadığı bir teknoloji) için gerekli eforu tahmin etmekte
daha başarılı olabileceğini göstermektedir. Ancak veri sayısı çok az olduğu için,
modellerin yeterliliği hakkında kesin yargılara varmak pek mümkün değildir. Veri azlığı,
analizlerimizde iki önemli açık nokta bulunmasına yol açmıştır. Öncelikle modeller
veriye en iyi uyan modeller olarak seçilmiş, tahmin performansları test edilememiştir.
İkinci olarak da olası tüm CFP-efor ilişkilerinin sadece yukarıda öne sürülen iki tip
modelle açıklanması mümkün olmayabilir. Veriler arttıkça belki üçüncü (hatta daha da
fazla) tipte CFP-efor ilişkisinin de ortaya çıkması olasıdır. Özetle, yapılması gereken
daha fazla CFP-efor ikilisi değerine ulaşmak ve öne sürülen bu iki modeli kulanarak,
elde edilen yeni veri ikililerinin CFP değeri ile değerlendirip, karşılık gelen efor
değerini tahminlemektir. Bu sayede modellerin tahmin performansları da test edilmiş
olacaktır. Ayrıca artan veri ile birlikte üçüncü (ya da daha fazla) CFP-efor ilişki tipinin
ortaya çıkıp çıkmayacağı da gözlemlenebilecektir.</p>
        <p>Sonuçta Dijital Öğrenim Çözümleri ekibinin 12 adet verisinin CFP bilgisiyle Efor
ilişkisi basit doğrusal regresyon modeliyle matematiksel olarak güçlü bir şekilde ifade
edilse deŞekil. 2 ve Şekil. 3’e bakıldığında, henüz ortaya konmamış başka
parametrelerle incelemelerin devam etmesi gerekliliği ortaya çıkmaktadır.
5</p>
      </sec>
      <sec id="sec-20-2">
        <title>Sonuç</title>
        <p>Çevik prensiplerle çalışan ekipler için işlerin büyüklüklerini ölçebilmek hem işleri
küçültebilmek hem de yapılan işi değerlendirmek ve iyileştirme noktalarını görebilmek
için oldukça önemlidir. İki amaç için de Hikaye Puanı ve CFP bazı açılardan benzeyen
ve bu yüzden kıyaslanan metriklerdir. Sıklıkla CFP’nin Hikaye Puanı’nı ikame edeceği
ve yalnızca CFP’ye yer verilecek örnekler üzerinden değerlendirmeler yapılır.
Bu çalışmada Türkiye’nin en büyük teknoloji ve iletişim hizmetleri sağlayıcı
firmalarından birinin Scrum ve Kanban’ın önemli ilkelerini benimseyerek uyguladığı yazılım
geliştirme sürecinde hem Hikaye Puanı hem de CFP kullanımının olumlu bir örneği
incelenmiştir. Çevik takım, Hikaye Puanını özellikle çok hızlı bir araç olması sebebiyle
işleri parçalayıp küçültürken; CFP’yi ise işin büyüklüğünün tespitinde, kalite takibinde
ve dış kaynak ödemelerinde kullanmaktadır. Özetle, çevik çerçeve ile çalışan
takımların hem Hikaye Puanı hem de CFP ile çalışması mümkündür.</p>
        <p>Çevik yazılım geliştirirken hem planlama hem de maliyet yönetimi açılarından bir
işe ne kadar efor harcanacağı ve işin ne zaman tamamlanacağı bilgilerine ihtiyaç
duyulmaktadır. CFP işin büyüklüğünü net şekilde ortaya koysa da CFP ile maliyet ve
tamamlanma süreleri arasında bir ilişki kurulması gerekmektedir.</p>
        <p>Bu ilişkinin incelenmesi için Dijital Öğrenim Çözümleri Ekibi’nin 12 adet
verisindeki CFP değeri ve işe harcanan toplam efor kullanılarak basit doğrusal regresyon
modeli kurgulanmış; doğrusal model matematiksel olarak güçlü görünse de, iyi bir tahmine
ulaşmak için daha fazla veriye ve belki daha fazla indikatöre (kullanılan teknoloji türü
gibi) ihtiyaç duyulduğu ortaya çıkmıştır.</p>
        <p>Yazılım geliştirme süreçlerinde; yapılacak çalışmanın yeni olup olmaması,
çalışmayı yapacak kişilerin uzmanlık seviyesi, kullanılan teknolojiler, işin tamamlanana
kadar ekip içi veya ekip dışı sebeplerle ne kadar bloklandığı, Kanban gibi bir çerçeve
kullanılıyorsa kuyrukta bekleyen iş sayısı ve kuyruk yönetimi, işin önceliği gibi pek
çok sayıda etken hem işe harcanan toplam efor hem de işin tamamlanma süresini
önemli ölçüde etkilemektedir. Daha fazla veri ve bu etkenlerin de dikkate alınmasıyla
büyüklüğü belirlenmiş işler için hem toplam eforun hem de toplam tamamlanma
sürelerinin daha güçlü modellerle tahminlenmesi mümkündür. Gelecekte veri kümesi
büyüdüğünde daha ileri modeller oluşturulup test edilmesi planlanmaktadır.
Kaynaklar
15. Freedman, David A.: Statistical models: theory and practice. Cambridge University Press
(2009).
16. Commeyne, C., Abran, A., Djouab, R.: Effort Estimation with Story Points and COSMIC</p>
        <p>Function Points – An Industry Case Study (2016).
17. Fehlmann, T., Santillo, L.: From Story Points to COSMIC Function Points in Agile Software</p>
        <p>Development – A Six Sigma perspective (2010).
18. Ungan, E., Çizmeli, N., Demirörs, O.: Comparison of Functional Size Based Estimation and</p>
        <p>Story Points, Based on Effort Estimation Effectiveness in Scrum Projects. (2014).
19. Desharnais, J., Kocaturk, B., Buglione, L.: Improving Agile Software Projects Planning</p>
        <p>Using the COSMIC Method. (2011).
20. Common Software Measurement International Consortium. The COSMIC Functional Size
Measurement Method Version 3.0.1 Guideline for the use of COSMIC FSM to manage
Agile projects,
http://www.cosmicon.com/portal/public/COSMIC_Agile_Projects_Guideline_v10.pdf , erişim tarihi 2017/09/09.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Scrum</given-names>
            <surname>Page</surname>
          </string-name>
          , https://www.agilealliance.org/glossary/scrum/,
          <source>erişim tarihi</source>
          <year>2017</year>
          /08/10.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Kanban</given-names>
            <surname>Page</surname>
          </string-name>
          , https://www.agilealliance.org/glossary/kanban/,
          <source>erişim tarihi</source>
          <year>2017</year>
          /08/10.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <article-title>VersionOne 11th annual state of agile development survey results</article-title>
          , https://explore.versionone.
          <article-title>com/state-of-agile/versionone-11th-annual-state-of-agile-</article-title>
          <source>report-2</source>
          , erişim tarihi
          <year>2017</year>
          /08/10.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>Scrum</given-names>
            <surname>Page</surname>
          </string-name>
          , http://www.scrumguides.org/scrum-guide.html,
          <source>erişim tarihi</source>
          <year>2017</year>
          /08/10.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Kniberg</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Skarin</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Kanban and Scrum making the most of both</article-title>
          .
          <source>Managing Editor: Diana Plesa. Enterprise software development series. InfoQ. USA</source>
          (
          <year>2010</year>
          ) ISBN 978-0-
          <fpage>557</fpage>
          - 13832-6.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Sugimori</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kusunoki</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cho</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Uchikawa</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Toyota Production system and Kanban system: Materialisation of just-in-time and respect-for-human system</article-title>
          .
          <source>Int. J. Prod. Res</source>
          .
          <volume>15</volume>
          (
          <issue>6</issue>
          ),
          <fpage>553</fpage>
          -
          <lpage>564</lpage>
          (
          <year>1977</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Christopher</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>The Agile Supply Chain: Competing in Volatile Markets</article-title>
          .
          <source>Industrial Marketing Management</source>
          .
          <volume>29</volume>
          (
          <issue>1</issue>
          ),
          <fpage>37</fpage>
          -
          <lpage>44</lpage>
          (
          <year>2000</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Anderson</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : Kanban:
          <article-title>Successful Evolutionary Change for Your Technology Business</article-title>
          . Sequim, Washington: Blue Hole Press (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Tamrakar</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jorgensen</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Does the use of Fibonacci numbers in planning poker affect effort estimates?</article-title>
          .
          <source>In Proceedings of 16th International Conference on Evaluation and Assessment in Software Engineering</source>
          , pp.
          <fpage>228</fpage>
          -
          <lpage>232</lpage>
          . (
          <year>2012</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Bağrıyanık</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karahoca</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ersoy</surname>
          </string-name>
          , E.:
          <article-title>Selection of a functional sizing methodology: A telecommunications company case study</article-title>
          .
          <source>Global Journal on Technology</source>
          <volume>7</volume>
          ,
          <fpage>98</fpage>
          -
          <lpage>108</lpage>
          (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Albrecht</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Gaffney</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.: Software</given-names>
            <surname>Function</surname>
          </string-name>
          ,
          <source>Source Lines of Code, and Development Effort Prediction: A Software Science Validation. IEEE Transactions on Software Engineering</source>
          , SE-
          <volume>9</volume>
          (
          <issue>6</issue>
          ),
          <fpage>639</fpage>
          -
          <lpage>648</lpage>
          (
          <year>1983</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Common Software Measurement International Consortium</surname>
          </string-name>
          .
          <source>The COSMIC Functional Size Measurement Method Version 4.0</source>
          .1 Measurement Manual, https://cosmic-sizing.org/publications/measurement-manual-
          <volume>401</volume>
          /, erişim tarihi
          <year>2017</year>
          /08/09.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Bağrıyanık</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karahoca</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Automated COSMIC Function</surname>
          </string-name>
          <article-title>Point measurement using a requirements engineering ontology</article-title>
          .
          <source>Information &amp; Software Technology</source>
          <volume>72</volume>
          ,
          <fpage>189</fpage>
          -
          <lpage>203</lpage>
          (
          <year>2016</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Salmanoğlu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Öztürk</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bağrıyanık</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ungan</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Demirörs</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Benefits and Challenges of Measuring Software Size: Early Results in a Large Organization</article-title>
          .
          <source>IWSM MENSURA</source>
          (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>