SlideShare ist ein Scribd-Unternehmen logo
1 von 38
dev  efor projesi
        ve
 çevik yöntemler

    Ersan Bilik
Gündem
• dev  efor ne yapar ?
• Nasıl geliştirdik ?
• Ne tür zorluklarla karşılaştık ?
• Çevik yöntemleri (ve pratiklerini) nasıl
  kullandık ?
• Kim ne dedi ?
• Sonuç
dev  efor ne yapar ?



                Typical Man / Month ?
                Try dev  efor
dev  efor ne yapar ?




    DEMO
Nasıl geliştirdik ?
• Herşey bir soruyla başladı.
  – What is developer and team productivity and how
    can we measure it in software engineering field ?


• Bu soruya cevap vermek zor...
Örnek Verelim
• Geliştiricinin kaç satır kod yazdığı bir ölçü mü ?
   – Measuring performance by more lines of code
     number is like considering a plane better than
     other because it weights more.
     ( Bill Gates )
• Geliştiricinin ne kadar iş üzerinde çalıştığı bir
  ölçü mü ?
   – Nothing is done between 9:00 – 17:00
     ( Timothy Lister)
Single Point Measurement
F(t)    Project 1   Project 2   Project 3   Project 4   Project 5


SLOC    100         150         1250        2000        10000


CC      10          15          120         210         1500


MI      95          80          70          68          60


DIT     4           3           2           3           5
Steve McConnell der ki
Remember that trends are
usually more important than
single-point measures.
Measures of individual
productivity tend to be far less
useful in comparing one
individual to another than they
are in seeing how one individual
is progressing over time.
Mevcut durum analizi
• Ölçüm yapmak zor.
  – Araçlar, sürece müdahele ediyor.
  – Sırf ölçüm yapmak için, araç satın alınıyor.
  – Araç uzmanları var.
  – Veriyi yorumlayan uzmanlar var.
  – etc, etc...
  – DEĞER YOK !
Oysa cennette...



            Ölçüm, mevcut sürece
            herhangi bir müdahele
            etmeden, otomatik
            olarak yapılır, saklanır,
            raporlar hazırlanır,
            gelecek “predict”
            edilebilir.
Bunu başarabilir miyiz ?
• Iteration 0 (Proof of Concept )
  – Teknik olarak mümkün müdür ?
  – Hangi platform baz alınacaktır ?
  – Hangi teknolojiler kullanılacaktır ?
  – Teknik riskler neler ?
  – Hangi varsayımlar yapılacaktır ?
  – Kısıtlar nedir ?
Iterasyon 0
• .NET platformunda yapılacak
• .NET geliştirme ortamına (Visual Studio)
  mantıksal bir sensör yerleştirilecek
• Veriler merkezde konsolide edilecek
• Yöneticilere metrik raporları sunulacak
Mimari
Reprospective 0
•   Geçen süre - 4 Ay
•   Tahminlerimize yakın mıyız ? – 1 ay gecikmeli
•   Yapılabilirlik durumu – Yapılabilir
•   Riskler – Yüksek Riskler var
Iteration 1 – start the engines
• Mevcut kodu yapılandır ( refactor ) ve modüler
  hale getir
• Test Driven Development pratiğini uygula
• Continious Integration uygula
  – Hergün 2 release
     • Debug Build: Her check-in sonrası (CI)
     • Nightly Build : Her gece sürüm çıkar
Reprospective 1
• Geçen Süre – 3 Ay
• Tahminlerimize yakın mıyız ? – Evet
• Riskler – Normal riskler var
Risk değerlendirmesi
• Metrikleri konsolide edemiyoruz !
• Aktif ve Akışkan zamanlar kendi başlarına bir
  değer katmıyor. Ancak, atanan bir görev
  olduğu taktirde değer ifade ediyor.
• Geliştiricinin “ben şu iş üzerinde çalışıyorum”
  demesi önemli.
Iteration 2 – polish the engines
• Ürünün kapsamı, Visual Studio ve Team
  Foundation Server ile entegre olacak şekilde
  değiştirildi.
• Web arayüzü ve ilgili modülleri tamamen
  kaldır
• Sadece visual studio kullanan geliştiricilerin
  kullanacağı bileşeni topluluk sürümü olarak
  bedava yayınla, geri besleme al, testleri yaptır.
Budur.
Reprospective 2
• Geçen Süre – 2 Ay
• Tahminlerimize yakın mıyız ? – Evet
• Riskler – Risk kalmadı. Projenin kapsamı ve
  yapılacak işler gayet net.
Iteration 3 – rock solid engines !
• Geribeslemelerden aldığımız kullanıcı
  şikayetlerini değerlendir
  – Bazı bileşen bağımlılıklarını kaldır
  – Bugları düzelt
  – Refactor, refactor, refactor !
Reprospective 3
• Geçen Süre – 1 ay
• Tahminlerimize yakın mıyız ? - Tam üstündeyiz
• 2. sürüm yayınlandı.
Iteration 4 – Finish him !
• VS Client Enterprise sürüm için özelleştirmeleri
  yap
• Offline çalışma zamanı gerçekleştir
• TFS Sunucu ambarını özelleştir
• Takım projelerinin metrik verileri ile
  geliştiricilerin efor metriklerini, onlara atanan
  görevler ile ilişkilendir
Budur.
Reprospective 4
• Kurumsal sürüm, mart ayının ilk haftasında
  yayımlanacak. ( Beta Sürümü )
• Tahminlerimize yakınız.
Bir Sonra...
• Production ( 1 Haziran )
Altyapımız...
• .NET Geliştirme ortamı ( VS Team System &
  TFS Server )
Aslında hangi süreci uyguladık ?
• Melez
• RUP’tan biraz, ( Inception , Elaboration )
  Scrum’dan biraz ( genel proje yönetimi )
  XP’den biraz (TDD, Continious Integration,
  Courage etc..)
• AgileCodartUP 
Key Notes...
• Çevik süreçler din, siz de mürit DEĞİLSİNİZ !
  – En iyi süreç, size ne yapmanız gerektiğini
    dayatmayan süreçtir.
  – En iyi süreç, üzerinize en iyi uyan elbise gibidir.
  – Olmuyorsa, zorlamayın. Yöneticiniz zorluyorsa,
    yöneticinize klavyeyi uzatın ve “sen daha iyi
    yazıyormuşsun duyduğuma göre” deyin 
     • TDD hikayesi...
Ne dediler ?
• This looks very interesting ! Please let me know when you
  release the product.
   – Steve McConnell ( CEO , Construx Software )
• Cool Concept. The key benefit i see here is not to ask
  anything from developer except to install it.
   – Eric Sink ( CEO , SourceGear )
• This looks very cool !
   – Scott Guthrie ( VP of Dev Division, Microsoft )
• These are indeed important improvements because it’s the
  trend that can really tell the story of your project. You can
  then start asking intelligent questions and identify troubling
  trends early on while you still have time to address them.
   – Jeff Beehler ( Chief of Staff - VSTS , Microsoft )
Ne dediler ?
• Bu biri bizi gözetliyor gibi bişey yani...
   – KOSGEB mülakatından Prof. Dr. .... ....
• Verileri NASA’dan mı alacaksınız ?
   – KOSGEB mülakatından Prof. Dr. .... .....
• Ben sizden daha iyi mühendisim !
   – TUBITAK Hakem inceleme kurulundan Doç. Dr. ...
Teşekkürler 
• Sorular ?

Weitere ähnliche Inhalte

Ähnlich wie CETurk Cevik Günü

CBAP Uluslararası İş Analisti Sertifikasyonu
CBAP Uluslararası İş Analisti SertifikasyonuCBAP Uluslararası İş Analisti Sertifikasyonu
CBAP Uluslararası İş Analisti SertifikasyonuMuhammed Özdemir
 
Canan Batur Extreme Programming
Canan Batur   Extreme ProgrammingCanan Batur   Extreme Programming
Canan Batur Extreme ProgrammingFatih Çengel
 
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme PratikleriBaşarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme PratikleriLemi Orhan Ergin
 
Bilgisayar Mühendisliğinde Kariyer ve Çevik Yazılım
Bilgisayar Mühendisliğinde Kariyer ve Çevik Yazılım Bilgisayar Mühendisliğinde Kariyer ve Çevik Yazılım
Bilgisayar Mühendisliğinde Kariyer ve Çevik Yazılım Murat Çabuk, MBA
 
Uygulama Geliştiricilere Başarı İpuçları
Uygulama Geliştiricilere Başarı İpuçlarıUygulama Geliştiricilere Başarı İpuçları
Uygulama Geliştiricilere Başarı İpuçlarıR. Caner Yıldırım
 
Web İçin Teknoloji Geliştirmek
Web İçin Teknoloji GeliştirmekWeb İçin Teknoloji Geliştirmek
Web İçin Teknoloji GeliştirmekVolkan Özçelik
 
Internet Explorer 8 Kitapçığı
Internet Explorer 8 KitapçığıInternet Explorer 8 Kitapçığı
Internet Explorer 8 KitapçığıWOLKANCA
 
E-ticarette Bilgi Teknolojileri - Bilgi Üniversitesi E-ticaret Akademi 2012.0...
E-ticarette Bilgi Teknolojileri - Bilgi Üniversitesi E-ticaret Akademi 2012.0...E-ticarette Bilgi Teknolojileri - Bilgi Üniversitesi E-ticaret Akademi 2012.0...
E-ticarette Bilgi Teknolojileri - Bilgi Üniversitesi E-ticaret Akademi 2012.0...Hakan ERDOGAN
 
GDO'suz Yazılım Geliştirme Teknikleri
GDO'suz Yazılım Geliştirme TeknikleriGDO'suz Yazılım Geliştirme Teknikleri
GDO'suz Yazılım Geliştirme TeknikleriLemi Orhan Ergin
 
Akar Şümşet - Ürün Yönetimi ve Metotlar
Akar Şümşet - Ürün Yönetimi ve MetotlarAkar Şümşet - Ürün Yönetimi ve Metotlar
Akar Şümşet - Ürün Yönetimi ve MetotlarProductTank İstanbul
 
Bilişim sistemleri analiz hizmeti şartname taslağı
Bilişim sistemleri analiz hizmeti şartname taslağıBilişim sistemleri analiz hizmeti şartname taslağı
Bilişim sistemleri analiz hizmeti şartname taslağıalinizam99
 
İTÜ İşletme Fakültesi - E-ticarette Yazılım ve Altyapı
İTÜ İşletme Fakültesi - E-ticarette Yazılım ve AltyapıİTÜ İşletme Fakültesi - E-ticarette Yazılım ve Altyapı
İTÜ İşletme Fakültesi - E-ticarette Yazılım ve AltyapıMurat Kader
 
Gartner EEE - PMO Buluşması - Vakıfbank Sunumu
Gartner EEE - PMO Buluşması - Vakıfbank SunumuGartner EEE - PMO Buluşması - Vakıfbank Sunumu
Gartner EEE - PMO Buluşması - Vakıfbank Sunumuhalilaksu
 
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu ÇözümlerSOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu ÇözümlerBGA Cyber Security
 
Veri Görselleştirme ve Grafik Datamining
Veri Görselleştirme ve Grafik DataminingVeri Görselleştirme ve Grafik Datamining
Veri Görselleştirme ve Grafik DataminingFatma ÇINAR
 

Ähnlich wie CETurk Cevik Günü (20)

CBAP Uluslararası İş Analisti Sertifikasyonu
CBAP Uluslararası İş Analisti SertifikasyonuCBAP Uluslararası İş Analisti Sertifikasyonu
CBAP Uluslararası İş Analisti Sertifikasyonu
 
Canan Batur Extreme Programming
Canan Batur   Extreme ProgrammingCanan Batur   Extreme Programming
Canan Batur Extreme Programming
 
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme PratikleriBaşarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
Başarılı Projelerin Anahtarı: Çevik Yazılım Geliştirme Pratikleri
 
Bilgisayar Mühendisliğinde Kariyer ve Çevik Yazılım
Bilgisayar Mühendisliğinde Kariyer ve Çevik Yazılım Bilgisayar Mühendisliğinde Kariyer ve Çevik Yazılım
Bilgisayar Mühendisliğinde Kariyer ve Çevik Yazılım
 
Uygulama Geliştiricilere Başarı İpuçları
Uygulama Geliştiricilere Başarı İpuçlarıUygulama Geliştiricilere Başarı İpuçları
Uygulama Geliştiricilere Başarı İpuçları
 
Daron Yöndem - ie8 Ebook Tr
Daron Yöndem - ie8 Ebook TrDaron Yöndem - ie8 Ebook Tr
Daron Yöndem - ie8 Ebook Tr
 
Web İçin Teknoloji Geliştirmek
Web İçin Teknoloji GeliştirmekWeb İçin Teknoloji Geliştirmek
Web İçin Teknoloji Geliştirmek
 
Insights Quarterly - Ekim 2017
Insights Quarterly - Ekim 2017Insights Quarterly - Ekim 2017
Insights Quarterly - Ekim 2017
 
Internet Explorer 8 Kitapçığı
Internet Explorer 8 KitapçığıInternet Explorer 8 Kitapçığı
Internet Explorer 8 Kitapçığı
 
E-ticarette Bilgi Teknolojileri - Bilgi Üniversitesi E-ticaret Akademi 2012.0...
E-ticarette Bilgi Teknolojileri - Bilgi Üniversitesi E-ticaret Akademi 2012.0...E-ticarette Bilgi Teknolojileri - Bilgi Üniversitesi E-ticaret Akademi 2012.0...
E-ticarette Bilgi Teknolojileri - Bilgi Üniversitesi E-ticaret Akademi 2012.0...
 
GDO'suz Yazılım Geliştirme Teknikleri
GDO'suz Yazılım Geliştirme TeknikleriGDO'suz Yazılım Geliştirme Teknikleri
GDO'suz Yazılım Geliştirme Teknikleri
 
Akar Şümşet - Ürün Yönetimi ve Metotlar
Akar Şümşet - Ürün Yönetimi ve MetotlarAkar Şümşet - Ürün Yönetimi ve Metotlar
Akar Şümşet - Ürün Yönetimi ve Metotlar
 
Bilişim sistemleri analiz hizmeti şartname taslağı
Bilişim sistemleri analiz hizmeti şartname taslağıBilişim sistemleri analiz hizmeti şartname taslağı
Bilişim sistemleri analiz hizmeti şartname taslağı
 
Proje Kapsam Yönetimi
Proje Kapsam YönetimiProje Kapsam Yönetimi
Proje Kapsam Yönetimi
 
İTÜ İşletme Fakültesi - E-ticarette Yazılım ve Altyapı
İTÜ İşletme Fakültesi - E-ticarette Yazılım ve AltyapıİTÜ İşletme Fakültesi - E-ticarette Yazılım ve Altyapı
İTÜ İşletme Fakültesi - E-ticarette Yazılım ve Altyapı
 
Gartner EEE - PMO Buluşması - Vakıfbank Sunumu
Gartner EEE - PMO Buluşması - Vakıfbank SunumuGartner EEE - PMO Buluşması - Vakıfbank Sunumu
Gartner EEE - PMO Buluşması - Vakıfbank Sunumu
 
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu ÇözümlerSOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
 
Veri Görselleştirme ve Grafik Datamining
Veri Görselleştirme ve Grafik DataminingVeri Görselleştirme ve Grafik Datamining
Veri Görselleştirme ve Grafik Datamining
 
Visual analysis
Visual analysisVisual analysis
Visual analysis
 
Open Source SOC Kurulumu
Open Source SOC KurulumuOpen Source SOC Kurulumu
Open Source SOC Kurulumu
 

CETurk Cevik Günü

  • 1. dev efor projesi ve çevik yöntemler Ersan Bilik
  • 2. Gündem • dev efor ne yapar ? • Nasıl geliştirdik ? • Ne tür zorluklarla karşılaştık ? • Çevik yöntemleri (ve pratiklerini) nasıl kullandık ? • Kim ne dedi ? • Sonuç
  • 3. dev efor ne yapar ? Typical Man / Month ? Try dev efor
  • 4. dev efor ne yapar ? DEMO
  • 5. Nasıl geliştirdik ? • Herşey bir soruyla başladı. – What is developer and team productivity and how can we measure it in software engineering field ? • Bu soruya cevap vermek zor...
  • 6. Örnek Verelim • Geliştiricinin kaç satır kod yazdığı bir ölçü mü ? – Measuring performance by more lines of code number is like considering a plane better than other because it weights more. ( Bill Gates ) • Geliştiricinin ne kadar iş üzerinde çalıştığı bir ölçü mü ? – Nothing is done between 9:00 – 17:00 ( Timothy Lister)
  • 7. Single Point Measurement F(t) Project 1 Project 2 Project 3 Project 4 Project 5 SLOC 100 150 1250 2000 10000 CC 10 15 120 210 1500 MI 95 80 70 68 60 DIT 4 3 2 3 5
  • 8. Steve McConnell der ki Remember that trends are usually more important than single-point measures. Measures of individual productivity tend to be far less useful in comparing one individual to another than they are in seeing how one individual is progressing over time.
  • 9. Mevcut durum analizi • Ölçüm yapmak zor. – Araçlar, sürece müdahele ediyor. – Sırf ölçüm yapmak için, araç satın alınıyor. – Araç uzmanları var. – Veriyi yorumlayan uzmanlar var. – etc, etc... – DEĞER YOK !
  • 10. Oysa cennette... Ölçüm, mevcut sürece herhangi bir müdahele etmeden, otomatik olarak yapılır, saklanır, raporlar hazırlanır, gelecek “predict” edilebilir.
  • 11. Bunu başarabilir miyiz ? • Iteration 0 (Proof of Concept ) – Teknik olarak mümkün müdür ? – Hangi platform baz alınacaktır ? – Hangi teknolojiler kullanılacaktır ? – Teknik riskler neler ? – Hangi varsayımlar yapılacaktır ? – Kısıtlar nedir ?
  • 12. Iterasyon 0 • .NET platformunda yapılacak • .NET geliştirme ortamına (Visual Studio) mantıksal bir sensör yerleştirilecek • Veriler merkezde konsolide edilecek • Yöneticilere metrik raporları sunulacak
  • 14.
  • 15.
  • 16. Reprospective 0 • Geçen süre - 4 Ay • Tahminlerimize yakın mıyız ? – 1 ay gecikmeli • Yapılabilirlik durumu – Yapılabilir • Riskler – Yüksek Riskler var
  • 17. Iteration 1 – start the engines • Mevcut kodu yapılandır ( refactor ) ve modüler hale getir • Test Driven Development pratiğini uygula • Continious Integration uygula – Hergün 2 release • Debug Build: Her check-in sonrası (CI) • Nightly Build : Her gece sürüm çıkar
  • 18.
  • 19. Reprospective 1 • Geçen Süre – 3 Ay • Tahminlerimize yakın mıyız ? – Evet • Riskler – Normal riskler var
  • 20. Risk değerlendirmesi • Metrikleri konsolide edemiyoruz ! • Aktif ve Akışkan zamanlar kendi başlarına bir değer katmıyor. Ancak, atanan bir görev olduğu taktirde değer ifade ediyor. • Geliştiricinin “ben şu iş üzerinde çalışıyorum” demesi önemli.
  • 21.
  • 22. Iteration 2 – polish the engines • Ürünün kapsamı, Visual Studio ve Team Foundation Server ile entegre olacak şekilde değiştirildi. • Web arayüzü ve ilgili modülleri tamamen kaldır • Sadece visual studio kullanan geliştiricilerin kullanacağı bileşeni topluluk sürümü olarak bedava yayınla, geri besleme al, testleri yaptır.
  • 24. Reprospective 2 • Geçen Süre – 2 Ay • Tahminlerimize yakın mıyız ? – Evet • Riskler – Risk kalmadı. Projenin kapsamı ve yapılacak işler gayet net.
  • 25. Iteration 3 – rock solid engines ! • Geribeslemelerden aldığımız kullanıcı şikayetlerini değerlendir – Bazı bileşen bağımlılıklarını kaldır – Bugları düzelt – Refactor, refactor, refactor !
  • 26. Reprospective 3 • Geçen Süre – 1 ay • Tahminlerimize yakın mıyız ? - Tam üstündeyiz • 2. sürüm yayınlandı.
  • 27. Iteration 4 – Finish him ! • VS Client Enterprise sürüm için özelleştirmeleri yap • Offline çalışma zamanı gerçekleştir • TFS Sunucu ambarını özelleştir • Takım projelerinin metrik verileri ile geliştiricilerin efor metriklerini, onlara atanan görevler ile ilişkilendir
  • 28.
  • 30. Reprospective 4 • Kurumsal sürüm, mart ayının ilk haftasında yayımlanacak. ( Beta Sürümü ) • Tahminlerimize yakınız.
  • 32. Altyapımız... • .NET Geliştirme ortamı ( VS Team System & TFS Server )
  • 33. Aslında hangi süreci uyguladık ? • Melez • RUP’tan biraz, ( Inception , Elaboration ) Scrum’dan biraz ( genel proje yönetimi ) XP’den biraz (TDD, Continious Integration, Courage etc..) • AgileCodartUP 
  • 34. Key Notes... • Çevik süreçler din, siz de mürit DEĞİLSİNİZ ! – En iyi süreç, size ne yapmanız gerektiğini dayatmayan süreçtir. – En iyi süreç, üzerinize en iyi uyan elbise gibidir. – Olmuyorsa, zorlamayın. Yöneticiniz zorluyorsa, yöneticinize klavyeyi uzatın ve “sen daha iyi yazıyormuşsun duyduğuma göre” deyin  • TDD hikayesi...
  • 35.
  • 36. Ne dediler ? • This looks very interesting ! Please let me know when you release the product. – Steve McConnell ( CEO , Construx Software ) • Cool Concept. The key benefit i see here is not to ask anything from developer except to install it. – Eric Sink ( CEO , SourceGear ) • This looks very cool ! – Scott Guthrie ( VP of Dev Division, Microsoft ) • These are indeed important improvements because it’s the trend that can really tell the story of your project. You can then start asking intelligent questions and identify troubling trends early on while you still have time to address them. – Jeff Beehler ( Chief of Staff - VSTS , Microsoft )
  • 37. Ne dediler ? • Bu biri bizi gözetliyor gibi bişey yani... – KOSGEB mülakatından Prof. Dr. .... .... • Verileri NASA’dan mı alacaksınız ? – KOSGEB mülakatından Prof. Dr. .... ..... • Ben sizden daha iyi mühendisim ! – TUBITAK Hakem inceleme kurulundan Doç. Dr. ...