Your SlideShare is downloading. ×
Scrum ve Redmine ile yazılım projesi yönetimi
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Scrum ve Redmine ile yazılım projesi yönetimi

3,661

Published on

Özgür Web Günleri 2011, …

Özgür Web Günleri 2011,
Scrum ve Redmine ile yazılım projesi yönetimi

Published in: Education
1 Comment
1 Like
Statistics
Notes
  • Önemli ek notlar:

    Redmine ile bağlantılar:
    1. Her bir redmine 'issue', git üzerindeki bir branch ile bağlantılandırılır. Böylece kod ile redmine arasındaki ilişki kopmaz.
    git branch -a
    remotes/origin/bug/554/flash_client_size --> 554 rakamı, redmine issue rakamıyla aynıdır.

    2. Redmine içinde 'Custom fields' tanımlanarak bağlantılar yapılır. Bu alanlar;
    a) srs-requirement-id
    Bu alan 'Tracability Matrix' için kullanılır. Yani SRS belgesindeki hangi alanlara denk düşen işlerin başlandığı/bitirldiği/sürdüğü bilgisi takip edilir.

    b) Google documents
    Biz her bir belgemizi artık tamamen google docs ile tutuyoruz. Uzaktan çalışırken pek çok sorunu ortadan kaldırıyor ve eş zamanlı çalışma şansı sağlıyor.

    c) sds-requirement-id
    SDS belgesine bağlantı.

    3. Her bir Sprint için mutlaka bir versiyon tanımlanır. Bu versiyonlar, aynı zamanda git tag
    olarak git üzerinde tanımlanır. Böylece Sprint sonucu ortaya çıkan paket, duruma göre geri alınabilir, tarihçesi takip edilebilir.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
3,661
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
75
Comments
1
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. SCRUM İle Yazılım Projesi Yönetimi ve Redmine 15 Ekim 2011 Özgür Web Günleri Yeditepe Üniversitesi http://www.ozgurwebgunleri.org.tr/2011/ Gokhan Boranalp gokhan@zetaops.com
  • 2. Yol yordam ● Yazılım projesinde hayat döngüsü ● SCRUM, XP ve CMMI ● Redmine proje yönetim yazılımı ● Püf noktaları ● Sorular
  • 3. Yazılım projesinde hayat döngüsü ● Zaman çok az ● Bütçe daima kısıtlı ● Kaynaklar belirsiz ● Belgeleme zayıf ● Bilgi akışı sorunlu ● Programcılar kofti ● Yöneticiler cahil ● Patron hodbin ● Hakem daima bıyıklı ● Zaman iyi planlanmış ● Bütçe ihtiyaca göre ● Kaynaklar belirli ● Belgeleme güçlü ● Bilgi akışı doğrudan ● Programcılar canavar ● Yöneticiler hedefe odaklı ● Patron akil ● Zemin futbola müsait
  • 4. Yazılım projesinde hayat döngüsü ● En başta, sorunları doğru tespit etmek ● Hatanın, daima var olacağını düşünerek, hatayı azaltacak sistemler kurmak ● Proje büyüklüğünü doğru anlamak ● Zayıf ve güçlü noktaları doğru tespit etmek ● Daima iletişim kanallarını açık tutmak ÖNCE KENDİNİ EĞİT
  • 5. SCRUM ● Geliştirme sürecini hızlandırmak ● Bireysel ve kurumsal amaçları yan yana getirmek ● Performansa dayalı bir kültür yaratmak ● Hisse sahiplerinin değer üretmesine destek olmak ● Her seviyede, kalıcı ve istikrarlı bir iletişim performansına erişmek ● Bireysel gelişimi ve yaşam kalitesini ilerletmek
  • 6. SCRUM ● Babaları Takeuchi ve Nonaka, 1986 ● Jeff Sutherland, Ken Schwaber, 1993, Easel Corp. ● Agile Manifesto, 2001 ● CMMI, Capability Maturity Model Integration ● Lean Development ● Kanban
  • 7. XP
  • 8. CMMI
  • 9. Genel Bakış
  • 10. SCRUM ● Roller – Product Owner, ScrumMaster, Team. ● Toplantılar – Sprint Planlama, Sprint Gözden Geçirme ve Günlük Scrum Toplantıları ● Yapılar – Product Backlog, Sprint Backlog ve Burndown Chart
  • 11. SCRUM ● Ürün Sahibi - Product Owner – Ürünün özelliklerini belirlemek, – Ürünün çıkma tarihini belirlemek – Ürünün karlılığından sorumlu olmak. ROI. – Piyasa koşullarına göre özellikler arasında sıralama yapmak. – İhtiyaca göre, her 30 günde bir özellikleri ve sıralamayı tekrar ayarlamak – İşin sonucunu kabul ya da reddetmek
  • 12. SCRUM ● SCRUM Master - Çilekeş – Ekibin işlevsel ve üretici olduğuna emin olmak – Tüm rollerle yakın işbirliği yapmak – Engelleri kaldırmak! – Ekibi harici müdahalelerden korumak – Sürecin takip edildiğine emin olmak. Toplantılar zamanlamak v.b.
  • 13. SCRUM ● Team - Yazılım Ekibi – Yedi ve daha fazla üyesi vardır – Sprint hedeflerini seçer ve işin sonuçlarını tanımlar – Proje yönergeleri dahilinde sprint hedefine erişmek için gerekeni yapma hakkı vardır. – Kendisini ve yapacağı işleri kendi kendine organize eder – Çalışma sonuçlarının demosunu Ürün Sahibi'ne yapar.
  • 14. SCRUM ● Sprint Planlama Toplantısı – Müşteriyle yazılımcıları en başında yan yana getirir – Reel maliyetlerin tespitine olanak sağlar – Müşterinin ne yapmak istediğini, hedeflerini yazılım ekibi doğru anlamış olur – Yapılacak işlerin sıralaması doğru yapılır – Bu işlerin tamamı 'Product Backlog' a yazılır.
  • 15. SCRUM ● Sprint Planlama Toplantısı – Ekip yapılacak işin zaman tahminini yapar – Belirlenen sprint zamanı aşılamaz – Backlog'daki toplam işler 2 gün ila 16 saatlik daha küçük işlere bölünür – Bu toplantılar 4 saati geçemezler – Ekip işin zamanında bitmeyeceğine karar verirse, eksiltme veya sıralamayı tekrar gözden geçirme talebinde bulunabilir
  • 16. SCRUM ● Yan faydalar – Başta sistem mimarı ve analistlere daha çok iş düşer. Ekipteki junior programcılar, bu süreçte nasıl planlama yapıldığını ve sistem mimarisini öğrenme şansına sahip olurlar – Müşteri ile yazılım ekibi arasındaki bağlantı kopmaz. – Müşteri ne zaman, ne özellikte bir ürüne sahip olacağını bilir.
  • 17. SCRUM ● Sprint Gözden Geçirme Toplantısı – En fazla 4 saat olabilir – Ürün Sahibi ve ortaklar ilk yarısına katılır – Backlog'daki işlerin hangilerinin yapıldığı denetlenir. – Sonraki sprint işleri sıralanır – Zamanın yarısında, Scrum Master, ekip üyeleriyle birlikte geriye dönük değerlendirme (Sprint Retrospective) yapar.
  • 18. SCRUM ● Günlük Scrum Toplantılar - Daily Scrum Meeting – Dün ne yaptım? – Bugün ne yapacağım? – Bana engel olan şeyler nelerdi? Scrum Master; ●Biten, başlayan işleri takip eder. Buna göre Burndown Chart'lar güncellenir ●Bağımlı işleri, engelleri tespit eder ●Daima ekibin kişisel sorunlarını dikkate alır
  • 19. Redmine ● Redmine bir proje yönetim sistemidir. ● Redmine backlogs plugin SCRUM için geliştirilmiştir.
  • 20. Redmine
  • 21. Sprint Taskboard
  • 22. Püf Noktaları ● Ekip elemanları değişebilir. Yapıyı buna göre kurun. ● Daima en önce test ve continuous integration (CI) alt yapısını kurmaya bakın. Buildbot, Hudson, Teamcity v.b. ● Ekip üyelerini seçmeye zaman ayırın. Test edilmemiş coder'la 'asla' çalışmayın. ● Proje yönetiminin, aslında kriz yönetimi olduğunu unutmayın. Sakin olmaya çalışın. ● Ürün yöneticisiyle açık ve net ilişki kurun. Sorunları kendinize saklamayın. ● Redmine üzerinde, kullanmaya başlamadan mutlaka pratik yapın. ● Kesinlikle her gün spor yapın!
  • 23. Sorular
  • 24. Kaynakça Ekitaplar ● The Scrum Papers: Nuts, Bolts, and Origins of an Agile Process, Jeff Sutherland, Ph.D. Ken Schwaber, ● Lean Software Development: An Agile Toolkit, Mary Poppendieck, Tom Poppendieck ● Yöneticiler için Dogru Sorular CMMI, Orhan Kalaycı Baglantılar ● http://en.wikipedia.org/wiki/Capability_Maturity_Model_Integration ● http://www.nitelik.net/ ● http://www.extremeprogramming.org/rules.html ● http://agilemanifesto.org/ ● http://www.redmine.org/ ● http://www.redminebacklogs.net/
  • 25. ● İletişim – gokhan@zetaops.com

×