SlideShare una empresa de Scribd logo
1 de 33
Descargar para leer sin conexión
Çevik Yaklaşım ve Scrum
Osman DÖNER, PMP, PMI-ACP
Proje Yöneticisi
Ajanda
 Geleneksel Yaklaşım ve Şelale Modeli,
 Endüstriyel İş vs. Yazılım
 Çevik Yaklaşım
 Scrum
 Toplantılar
 Yapılar
 Roller
Geleneksel Yaklaşım – Şelale Yöntemi
Gereksinim
Analizi
Tasarım
Kodlama
Test
Kurulum
Bakım
Geleneksel Yaklaşımın Dezavantajları
 Ürün teslimatı çok gecikiyor – proje sonu,
 Sistemin test edilmesi ve müşteri geri bildirimleri proje
sonuna kalıyor,
 Büyük / kompleks işlerin tek fazda analizi mümkün değil,
Gereksinimler başlangıçta çok net olmuyor.
 Değişiklik yapma maliyetini yükseltiyor.
Şelale Yöntemi Ne Zaman Uygun?
 Kısa bir projeyse (3-6 ay gibi),
 Gereksinimler çok açıksa ve değişim
beklenmiyorsa, belirsizlik yoksa ve
 Kullanılacak teknolojik yaklaşım netse,
 Endüstriyel bir ürün geliştiriliyorsa.
Endüstriyel İş vs. Yazılım İşi
 Somut,
 Üretim aşamasında değişime
kapalı veya maliyetli,
 Parçalı teslimi mümkün değil,
 Komut / kontrol mekanizması,
 Katı standartlara tabi,
 Çalışanlara maliyet unsuru.
 Soyut,
 Geç dönemlerde dahi değişime
açık,
 Parçalı olarak teslim edilebilir,
 Ortak karar alma mekanizmaları,
 Standartlar proje ve ekibe göre
uyarlanabilir,
 Çalışanlar projenin en değerli
varlıklarıdır.
İhtiyaç Nedir?
 Lineer olmayan, tekrarlayan(iterative) bir
süreç,
 Sık aralıklarla teslimatlar (2-4 haftalık
döngüler),
 Belli fonksiyonları içeren artırımlar(increment)
 Geri bildirimlerin kısa süreli döngülerle
alınması,
 Ürün ihtiyacı karşılıyor mu?
 Doğru yolda ilerliyor muyuz?
 Geri bildirimlere göre ürünü güncelle.
Plan
Do
Check
Act
Agile Manifesto
Process and tools
Individuals and
interactions
over
Following a planResponding to change over
Comprehensive
documentation
Working software over
Contract negotiationCustomer collaboration over
http://www.agilemanifesto.org
Çevik Prensipler
 https://agilemanifesto.org/principles.html
 Çevik Prensipler(12), teknik pratiklerden ziyade ürünün
geliştirilmesinde sürecinde, geleneksel yaklaşımdan farklı daha
yeni bir anlayışı temsil ediyor.
Çevik Yaklaşım Her Zaman Uygun Mu?
Basit
Kaotik
GereksinimlerinBelirsizliği
Teknolojinin Belirsizliği
Çevik Pratikler
 Scrum,
 XP (Extreme Programming),
 Kanban vs.
 Hibrit yaklaşımlar da tercih edilmektedir.
Scrum – Büyük Resim
Sprintler
 Scrum projelerinde bir dizi Sprint ile ilerleme
sağlanır.
 Sprint = Mini proje
 XP’de bunlara iterasyon denir.
 Genelde 2-4 haftalık periyotlar tercih edilir.
 Tipik aktiviteler:
 Tasarım,
 Kodlama,
 Refactor,
 Test,
 Kurulum,
 Dokümantasyon
 Sprint kapsamı bir kere planlandıktan sonra
değiştirilmez.
Sprint
Scrum Framework
• Product Owner
• Scrum Master
• Dev. Team
Roller
• Sprint Planning
• Sprint Review
• Sprint Retrospective
• Daily Scrum
Toplantılar
• Product Backlog
• Sprint Backlog
Yapılar
Scrum Framework
• Product Owner
• Scrum Master
• Dev. Team
Roller
• Sprint Planning
• Sprint Review
• Sprint Retrospective
• Daily Scrum
Toplantılar
• Product Backlog
• Sprint Backlog
Yapılar
Product Owner
 Ürün vizyonunu, içermesi gereken gereksinimleri belirler.
 Ürünün maksimum iş faydasını sağlamasını garanti altına alır.
 Vizyon ve gereksinimlerin iç-dış paydaşlar tarafından doğru
anlaşılmasını sağlar.
 Ürün gereksinimlerini, iş faydasına göre önceliklendirir.
 Planlamaya dahil edilmeye yakın ürün gereksinimlerini
detaylandırır.
 Geliştirilen ürünün beklenen özelliklere göre kontrolünü sağlar.
(Kabul veya Ret)
 Product Backlog’un tek sorumlusu ve karar vericisidir.
Scrum Master
 Proje yöneticisi rolünü temsil eder.
 Scrum sürecinin doğru uygulanmasını sağlar.
 Süreç pratikleri konusunda tüm ekibe koçluk yapar.
 Ekibin karşılaştığı engellerin aşılması için destek olur.
 Ekibin dış etkenlerden (müşteriden gelen telefonlar vs.) en az
ölçüde etkilenmesine çalışır.
 Scrum rolleri arasında etkileşim verimli olmasını sağlar. Birlikte
çalışma yöntemleri konusunda destek olur.
Development Team
 3-9 kişilik ekipler.
 Kendi organize olur.
 Büyüklük tahminleri, Sprint planlamaları,
 Tasarım ve diğer teknik kararların verilmesi.
 Sprint Backlog’da user storyleri alt görevlere böler.
 Tasarım,
 Veritabanı işleri, (tablo ve alanların oluşturulması gibi)
 Kodlama,
 Unit test,
 Sistem testi,
 İlgili dokümantasyon (yardım kılavuzları vs.)..
Scrum Framework
• Product Owner
• Scrum Master
• Dev. Team
Roller
• Sprint Planning
• Sprint Review
• Sprint Retrospective
• Daily Scrum
Toplantılar
• Product Backlog
• Sprint Backlog
Yapılar
Sprint Planning
Sprint Planning
•Sprint Hedefini belirle,
•Önceliklendirilmiş işlerin büyüklük
tahminlerini revize et.
•İş büyüklükleri ve takım hızına
göre product backlogtaki işleri
plana dahil et. (self - organize)
•İşleri alt görevlere böl.
Sprint
Hedefi
Sprint
BacklogTakım Hızı
Product
Backlog
Daily Scrum
 Geliştirme ekibi içindeki günlük koordinasyon toplantıları,
 En fazla 15 dakika,
 Ayaktadır – Daily Stand-up da denir.
 Amaç problem çözmek değildir.
 Ekibin durumu raporlaması, farkındalığın oluşması sağlanır.
 PO ve SM gözlemci olarak katılım sağlayabilir.
Daily Scrum - 3 Soru
1 - Dün ne yaptın?
2 - Bugün ne yapacaksın?
3 - İlerlemeni engelleyen bir durum
var mı?
 Ekip içi taahhüt verilmiş olunur.
 Sorunlar rapor edildiyse, follow-up görüşmelerle ayrıca irdelenir.
Sprint Review
 Takım tarafından geliştirilen ürünün demosu yapılır.
 Tüm takım katılır.
 Dış paydaşlar da katılım sağlayabilir.
 PO tarafından ekibe geri bildirim yapılır.
 Sprint hedefine ulaşılmış mı?
 Ürünü iyileştirmek için öneriler…
 PO tarafından kabul edildiği takdirde ürün canlı ortama
kurulabilir.
Sprint Retrospective
 Her Sprint sonunda tüm takım katılır.
 Sprint içerisinde iyi giden ve kötü giden hususlar neler?
 Nasıl daha iyi çalışabiliriz?
Yapmaya Başla
Sona Erdir
Yapmaya Devam Et
Scrum Framework
• Product Owner
• Scrum Master
• Dev. Team
Roller
• Sprint Planning
• Sprint Review
• Sprint Retrospective
• Daily Scrum
Toplantılar
• Product Backlog
• Sprint Backlog
Yapılar
Product Backlog
 Tüm ürün gereksinimleri (user stories),
 Hatalar,
 Riskler (anti-value),
 Teknik işlerden oluşur.
 PO işleri önceliklendirir.
 Backlog Grooming
 Her Sprint öncesinde öncelikleri ve
detay seviyeleri gözden geçirilir.
 Takım işler için büyüklük tahminlerini
ekler.
Product Backlog - Örnek
Backlog Item Tahmin Öncelik
Test Aracını kur. 5 1
Sistem Yöneticisi olarak yeni bir kullanıcı
eklemek istiyorum.
3 2
Sistem Yöneticisi olarak var olan bir kullanıcıya
rol atamak istiyorum.
2 3
X sınıfını refactor et. 3 4
… … 5
… … 6
User Story (Kullanıcı Hikayesi)
 «<Rol / Aktör> olarak, <İş Faydasını> sağlamak için,
<Fonksiyonu> gerçekleştirmek istiyorum.»
 Örnek: Sistem Yöneticisi olarak, kullanıcının sisteme girebilmesi
ve yetkileri çerçevesinde işlem yapabilmesi için, kullanıcıyı
sisteme eklemek istiyorum.
 Kabul Kriterleri:
 Bir kullanıcı sisteme bir defa eklenebilir.
 Kullanıcı bilgileri eksiksiz olmalıdır.
 Kullanıcı adı ve soyadı en fazla 30 karakter olabilir vb.
Sprint Backlog
 Takım üyeleri hangi işleri Sprint’e
alacaklarına kendileri karar verir – self
organized.
 Önceliklere göre iş alınır.
 Product Backlog’taki işler teknik
tasklara bölünür.
Sprint Backlog - Örnek
Görevler
Kullanıcı Arayüzünü kodla
İş mantığını kodla
Veritabanı tablo ve alanlarını oluştur
Birim testlerini kodla
Sistem testlerini hazırla
Yardım Kılavuzunu güncelle
……
…..
2 Haftalık Bir Sprint - Özet
Diğer Çevik Pratikler
 Pair Programming,
 Test Driven Development,
 Continuous Integration,
 Automated Testing,
 Refactoring vb.
SORULAR?

Más contenido relacionado

La actualidad más candente

Yazılım Projelerine Scrum Yazılım Geliştirme Modelinin Uygulanması ve Scrum Y...
Yazılım Projelerine Scrum Yazılım Geliştirme Modelinin Uygulanması ve Scrum Y...Yazılım Projelerine Scrum Yazılım Geliştirme Modelinin Uygulanması ve Scrum Y...
Yazılım Projelerine Scrum Yazılım Geliştirme Modelinin Uygulanması ve Scrum Y...Cenk Derinozlu
 
Agile (cevik) yaklasim_ile_scrum_yontemi-savas-dogan-cc-by
Agile (cevik) yaklasim_ile_scrum_yontemi-savas-dogan-cc-byAgile (cevik) yaklasim_ile_scrum_yontemi-savas-dogan-cc-by
Agile (cevik) yaklasim_ile_scrum_yontemi-savas-dogan-cc-bySavaş DOĞAN
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process IntroductionNguyen Hai
 
Yazılımcı Gözüyle Scrum
Yazılımcı Gözüyle ScrumYazılımcı Gözüyle Scrum
Yazılımcı Gözüyle Scrumnedirtv
 
Scrum 101
Scrum 101Scrum 101
Scrum 101beLithe
 
Scrum takımlarında performans ölçüm yaklaşımı
Scrum takımlarında performans ölçüm yaklaşımıScrum takımlarında performans ölçüm yaklaşımı
Scrum takımlarında performans ölçüm yaklaşımıNecmettin Ozkan
 
Agile Manifesto Nedir
Agile Manifesto NedirAgile Manifesto Nedir
Agile Manifesto NedirACM
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overviewsunilkumar_
 
Agile scrum fundamentals
Agile scrum fundamentalsAgile scrum fundamentals
Agile scrum fundamentalsDeniz Gungor
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrumPrudentialSolutions
 
Scrum Agile Methodlogy
Scrum Agile MethodlogyScrum Agile Methodlogy
Scrum Agile MethodlogyBahaa Farouk
 

La actualidad más candente (20)

Yazılım Projelerine Scrum Yazılım Geliştirme Modelinin Uygulanması ve Scrum Y...
Yazılım Projelerine Scrum Yazılım Geliştirme Modelinin Uygulanması ve Scrum Y...Yazılım Projelerine Scrum Yazılım Geliştirme Modelinin Uygulanması ve Scrum Y...
Yazılım Projelerine Scrum Yazılım Geliştirme Modelinin Uygulanması ve Scrum Y...
 
Agile Yaklaşımlar
Agile YaklaşımlarAgile Yaklaşımlar
Agile Yaklaşımlar
 
Agile (cevik) yaklasim_ile_scrum_yontemi-savas-dogan-cc-by
Agile (cevik) yaklasim_ile_scrum_yontemi-savas-dogan-cc-byAgile (cevik) yaklasim_ile_scrum_yontemi-savas-dogan-cc-by
Agile (cevik) yaklasim_ile_scrum_yontemi-savas-dogan-cc-by
 
Agile Scrum Temel Egitimi
Agile Scrum Temel EgitimiAgile Scrum Temel Egitimi
Agile Scrum Temel Egitimi
 
Scrum 101
Scrum 101 Scrum 101
Scrum 101
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
Yazılımcı Gözüyle Scrum
Yazılımcı Gözüyle ScrumYazılımcı Gözüyle Scrum
Yazılımcı Gözüyle Scrum
 
Çevik / Agile Metodoloji
Çevik / Agile MetodolojiÇevik / Agile Metodoloji
Çevik / Agile Metodoloji
 
2017 Scrum by Picture
2017 Scrum by Picture2017 Scrum by Picture
2017 Scrum by Picture
 
Agile
Agile Agile
Agile
 
Proje Kapsam Yönetimi
Proje Kapsam YönetimiProje Kapsam Yönetimi
Proje Kapsam Yönetimi
 
Scrum 101
Scrum 101Scrum 101
Scrum 101
 
Scrum takımlarında performans ölçüm yaklaşımı
Scrum takımlarında performans ölçüm yaklaşımıScrum takımlarında performans ölçüm yaklaşımı
Scrum takımlarında performans ölçüm yaklaşımı
 
Agile Manifesto Nedir
Agile Manifesto NedirAgile Manifesto Nedir
Agile Manifesto Nedir
 
Scrum training
Scrum trainingScrum training
Scrum training
 
PROBLEM ÇÖZME VE KARAR VERME TEKNİKLERİ
PROBLEM ÇÖZME VE KARAR VERME TEKNİKLERİPROBLEM ÇÖZME VE KARAR VERME TEKNİKLERİ
PROBLEM ÇÖZME VE KARAR VERME TEKNİKLERİ
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
Agile scrum fundamentals
Agile scrum fundamentalsAgile scrum fundamentals
Agile scrum fundamentals
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrum
 
Scrum Agile Methodlogy
Scrum Agile MethodlogyScrum Agile Methodlogy
Scrum Agile Methodlogy
 

Similar a Çevik Yaklaşım ve Scrum

Scrum ve Redmine ile yazılım projesi yönetimi
Scrum ve Redmine ile yazılım projesi yönetimiScrum ve Redmine ile yazılım projesi yönetimi
Scrum ve Redmine ile yazılım projesi yönetimiGokhan Boranalp
 
Yazılım Mimarileri - Yazılım Geliştirme Modelleri
Yazılım Mimarileri - Yazılım Geliştirme ModelleriYazılım Mimarileri - Yazılım Geliştirme Modelleri
Yazılım Mimarileri - Yazılım Geliştirme ModelleriKubra Kose
 
Scrum Toplantıları - Bölüm 1
Scrum Toplantıları - Bölüm 1Scrum Toplantıları - Bölüm 1
Scrum Toplantıları - Bölüm 1Ozan Ozcan
 
E-ticarette Yazılım ve Altyapı
E-ticarette Yazılım ve AltyapıE-ticarette Yazılım ve Altyapı
E-ticarette Yazılım ve AltyapıMurat Kader
 
CBAP Uluslararası İş Analisti Sertifikasyonu
CBAP Uluslararası İş Analisti SertifikasyonuCBAP Uluslararası İş Analisti Sertifikasyonu
CBAP Uluslararası İş Analisti SertifikasyonuMuhammed Özdemir
 
Scrum ile çevikleşiyoruz
Scrum ile çevikleşiyoruzScrum ile çevikleşiyoruz
Scrum ile çevikleşiyoruzArda Cetinkaya
 
İ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
 
Çevik Manifesto Sunum
Çevik Manifesto Sunum Çevik Manifesto Sunum
Çevik Manifesto Sunum ERCAN CETIN
 
JİRA'ya Giriş / Atlassian
JİRA'ya Giriş / AtlassianJİRA'ya Giriş / Atlassian
JİRA'ya Giriş / AtlassianCansu Kaya
 
Yazılım mimarisi yazılım müh.
Yazılım mimarisi yazılım müh.Yazılım mimarisi yazılım müh.
Yazılım mimarisi yazılım müh.Hüseyin Örer
 
Analist Eğitimi - Tüm Bölümler - [535 Slides]
Analist Eğitimi - Tüm Bölümler -  [535 Slides]Analist Eğitimi - Tüm Bölümler -  [535 Slides]
Analist Eğitimi - Tüm Bölümler - [535 Slides]Erol Bozkurt
 
Oracle Policy Automation ile Karar Ve Kural Otomasyonu
Oracle Policy Automation ile Karar Ve Kural OtomasyonuOracle Policy Automation ile Karar Ve Kural Otomasyonu
Oracle Policy Automation ile Karar Ve Kural OtomasyonuGökhan Engin
 
Agile Yaklasimlarin Yonetsel Acidan 12 Faydasi - TUTEV Agile Talks Ankara
Agile Yaklasimlarin Yonetsel Acidan 12 Faydasi - TUTEV Agile Talks AnkaraAgile Yaklasimlarin Yonetsel Acidan 12 Faydasi - TUTEV Agile Talks Ankara
Agile Yaklasimlarin Yonetsel Acidan 12 Faydasi - TUTEV Agile Talks AnkaraHakan ERDOGAN
 
Orta ölçekli bir işletmenin verimlilik temel adımları
Orta ölçekli bir işletmenin verimlilik temel adımlarıOrta ölçekli bir işletmenin verimlilik temel adımları
Orta ölçekli bir işletmenin verimlilik temel adımlarıKenan Berkdemir
 
Yazılım projeleri süreç performans ölçümü
Yazılım projeleri süreç performans ölçümüYazılım projeleri süreç performans ölçümü
Yazılım projeleri süreç performans ölçümüTUBITAK
 
Scrum Roller ve Sorumluluklar
Scrum Roller ve SorumluluklarScrum Roller ve Sorumluluklar
Scrum Roller ve SorumluluklarCihan YILMAZ
 
Mikideas Eğitim ve Danışmanlık Hizmetleri Broşürü
Mikideas Eğitim ve Danışmanlık Hizmetleri BroşürüMikideas Eğitim ve Danışmanlık Hizmetleri Broşürü
Mikideas Eğitim ve Danışmanlık Hizmetleri BroşürüErol Bozkurt
 

Similar a Çevik Yaklaşım ve Scrum (20)

Scrum tanıtımı
Scrum tanıtımıScrum tanıtımı
Scrum tanıtımı
 
Scrum ve Redmine ile yazılım projesi yönetimi
Scrum ve Redmine ile yazılım projesi yönetimiScrum ve Redmine ile yazılım projesi yönetimi
Scrum ve Redmine ile yazılım projesi yönetimi
 
Yazılım Mimarileri - Yazılım Geliştirme Modelleri
Yazılım Mimarileri - Yazılım Geliştirme ModelleriYazılım Mimarileri - Yazılım Geliştirme Modelleri
Yazılım Mimarileri - Yazılım Geliştirme Modelleri
 
Scrum Toplantıları - Bölüm 1
Scrum Toplantıları - Bölüm 1Scrum Toplantıları - Bölüm 1
Scrum Toplantıları - Bölüm 1
 
E-ticarette Yazılım ve Altyapı
E-ticarette Yazılım ve AltyapıE-ticarette Yazılım ve Altyapı
E-ticarette Yazılım ve Altyapı
 
CBAP Uluslararası İş Analisti Sertifikasyonu
CBAP Uluslararası İş Analisti SertifikasyonuCBAP Uluslararası İş Analisti Sertifikasyonu
CBAP Uluslararası İş Analisti Sertifikasyonu
 
Scrum ile çevikleşiyoruz
Scrum ile çevikleşiyoruzScrum ile çevikleşiyoruz
Scrum ile çevikleşiyoruz
 
İ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ı
 
Çevik Manifesto Sunum
Çevik Manifesto Sunum Çevik Manifesto Sunum
Çevik Manifesto Sunum
 
JİRA'ya Giriş / Atlassian
JİRA'ya Giriş / AtlassianJİRA'ya Giriş / Atlassian
JİRA'ya Giriş / Atlassian
 
Yazılım mimarisi yazılım müh.
Yazılım mimarisi yazılım müh.Yazılım mimarisi yazılım müh.
Yazılım mimarisi yazılım müh.
 
MART - www.martgeldi.com - Scrum Master (PSM) Eğitimi
MART - www.martgeldi.com - Scrum Master (PSM) EğitimiMART - www.martgeldi.com - Scrum Master (PSM) Eğitimi
MART - www.martgeldi.com - Scrum Master (PSM) Eğitimi
 
Analist Eğitimi - Tüm Bölümler - [535 Slides]
Analist Eğitimi - Tüm Bölümler -  [535 Slides]Analist Eğitimi - Tüm Bölümler -  [535 Slides]
Analist Eğitimi - Tüm Bölümler - [535 Slides]
 
Oracle Policy Automation ile Karar Ve Kural Otomasyonu
Oracle Policy Automation ile Karar Ve Kural OtomasyonuOracle Policy Automation ile Karar Ve Kural Otomasyonu
Oracle Policy Automation ile Karar Ve Kural Otomasyonu
 
Proje sunum
Proje sunumProje sunum
Proje sunum
 
Agile Yaklasimlarin Yonetsel Acidan 12 Faydasi - TUTEV Agile Talks Ankara
Agile Yaklasimlarin Yonetsel Acidan 12 Faydasi - TUTEV Agile Talks AnkaraAgile Yaklasimlarin Yonetsel Acidan 12 Faydasi - TUTEV Agile Talks Ankara
Agile Yaklasimlarin Yonetsel Acidan 12 Faydasi - TUTEV Agile Talks Ankara
 
Orta ölçekli bir işletmenin verimlilik temel adımları
Orta ölçekli bir işletmenin verimlilik temel adımlarıOrta ölçekli bir işletmenin verimlilik temel adımları
Orta ölçekli bir işletmenin verimlilik temel adımları
 
Yazılım projeleri süreç performans ölçümü
Yazılım projeleri süreç performans ölçümüYazılım projeleri süreç performans ölçümü
Yazılım projeleri süreç performans ölçümü
 
Scrum Roller ve Sorumluluklar
Scrum Roller ve SorumluluklarScrum Roller ve Sorumluluklar
Scrum Roller ve Sorumluluklar
 
Mikideas Eğitim ve Danışmanlık Hizmetleri Broşürü
Mikideas Eğitim ve Danışmanlık Hizmetleri BroşürüMikideas Eğitim ve Danışmanlık Hizmetleri Broşürü
Mikideas Eğitim ve Danışmanlık Hizmetleri Broşürü
 

Çevik Yaklaşım ve Scrum

  • 1. Çevik Yaklaşım ve Scrum Osman DÖNER, PMP, PMI-ACP Proje Yöneticisi
  • 2. Ajanda  Geleneksel Yaklaşım ve Şelale Modeli,  Endüstriyel İş vs. Yazılım  Çevik Yaklaşım  Scrum  Toplantılar  Yapılar  Roller
  • 3. Geleneksel Yaklaşım – Şelale Yöntemi Gereksinim Analizi Tasarım Kodlama Test Kurulum Bakım
  • 4. Geleneksel Yaklaşımın Dezavantajları  Ürün teslimatı çok gecikiyor – proje sonu,  Sistemin test edilmesi ve müşteri geri bildirimleri proje sonuna kalıyor,  Büyük / kompleks işlerin tek fazda analizi mümkün değil, Gereksinimler başlangıçta çok net olmuyor.  Değişiklik yapma maliyetini yükseltiyor.
  • 5. Şelale Yöntemi Ne Zaman Uygun?  Kısa bir projeyse (3-6 ay gibi),  Gereksinimler çok açıksa ve değişim beklenmiyorsa, belirsizlik yoksa ve  Kullanılacak teknolojik yaklaşım netse,  Endüstriyel bir ürün geliştiriliyorsa.
  • 6. Endüstriyel İş vs. Yazılım İşi  Somut,  Üretim aşamasında değişime kapalı veya maliyetli,  Parçalı teslimi mümkün değil,  Komut / kontrol mekanizması,  Katı standartlara tabi,  Çalışanlara maliyet unsuru.  Soyut,  Geç dönemlerde dahi değişime açık,  Parçalı olarak teslim edilebilir,  Ortak karar alma mekanizmaları,  Standartlar proje ve ekibe göre uyarlanabilir,  Çalışanlar projenin en değerli varlıklarıdır.
  • 7. İhtiyaç Nedir?  Lineer olmayan, tekrarlayan(iterative) bir süreç,  Sık aralıklarla teslimatlar (2-4 haftalık döngüler),  Belli fonksiyonları içeren artırımlar(increment)  Geri bildirimlerin kısa süreli döngülerle alınması,  Ürün ihtiyacı karşılıyor mu?  Doğru yolda ilerliyor muyuz?  Geri bildirimlere göre ürünü güncelle. Plan Do Check Act
  • 8. Agile Manifesto Process and tools Individuals and interactions over Following a planResponding to change over Comprehensive documentation Working software over Contract negotiationCustomer collaboration over http://www.agilemanifesto.org
  • 9. Çevik Prensipler  https://agilemanifesto.org/principles.html  Çevik Prensipler(12), teknik pratiklerden ziyade ürünün geliştirilmesinde sürecinde, geleneksel yaklaşımdan farklı daha yeni bir anlayışı temsil ediyor.
  • 10. Çevik Yaklaşım Her Zaman Uygun Mu? Basit Kaotik GereksinimlerinBelirsizliği Teknolojinin Belirsizliği
  • 11. Çevik Pratikler  Scrum,  XP (Extreme Programming),  Kanban vs.  Hibrit yaklaşımlar da tercih edilmektedir.
  • 13. Sprintler  Scrum projelerinde bir dizi Sprint ile ilerleme sağlanır.  Sprint = Mini proje  XP’de bunlara iterasyon denir.  Genelde 2-4 haftalık periyotlar tercih edilir.  Tipik aktiviteler:  Tasarım,  Kodlama,  Refactor,  Test,  Kurulum,  Dokümantasyon  Sprint kapsamı bir kere planlandıktan sonra değiştirilmez. Sprint
  • 14. Scrum Framework • Product Owner • Scrum Master • Dev. Team Roller • Sprint Planning • Sprint Review • Sprint Retrospective • Daily Scrum Toplantılar • Product Backlog • Sprint Backlog Yapılar
  • 15. Scrum Framework • Product Owner • Scrum Master • Dev. Team Roller • Sprint Planning • Sprint Review • Sprint Retrospective • Daily Scrum Toplantılar • Product Backlog • Sprint Backlog Yapılar
  • 16. Product Owner  Ürün vizyonunu, içermesi gereken gereksinimleri belirler.  Ürünün maksimum iş faydasını sağlamasını garanti altına alır.  Vizyon ve gereksinimlerin iç-dış paydaşlar tarafından doğru anlaşılmasını sağlar.  Ürün gereksinimlerini, iş faydasına göre önceliklendirir.  Planlamaya dahil edilmeye yakın ürün gereksinimlerini detaylandırır.  Geliştirilen ürünün beklenen özelliklere göre kontrolünü sağlar. (Kabul veya Ret)  Product Backlog’un tek sorumlusu ve karar vericisidir.
  • 17. Scrum Master  Proje yöneticisi rolünü temsil eder.  Scrum sürecinin doğru uygulanmasını sağlar.  Süreç pratikleri konusunda tüm ekibe koçluk yapar.  Ekibin karşılaştığı engellerin aşılması için destek olur.  Ekibin dış etkenlerden (müşteriden gelen telefonlar vs.) en az ölçüde etkilenmesine çalışır.  Scrum rolleri arasında etkileşim verimli olmasını sağlar. Birlikte çalışma yöntemleri konusunda destek olur.
  • 18. Development Team  3-9 kişilik ekipler.  Kendi organize olur.  Büyüklük tahminleri, Sprint planlamaları,  Tasarım ve diğer teknik kararların verilmesi.  Sprint Backlog’da user storyleri alt görevlere böler.  Tasarım,  Veritabanı işleri, (tablo ve alanların oluşturulması gibi)  Kodlama,  Unit test,  Sistem testi,  İlgili dokümantasyon (yardım kılavuzları vs.)..
  • 19. Scrum Framework • Product Owner • Scrum Master • Dev. Team Roller • Sprint Planning • Sprint Review • Sprint Retrospective • Daily Scrum Toplantılar • Product Backlog • Sprint Backlog Yapılar
  • 20. Sprint Planning Sprint Planning •Sprint Hedefini belirle, •Önceliklendirilmiş işlerin büyüklük tahminlerini revize et. •İş büyüklükleri ve takım hızına göre product backlogtaki işleri plana dahil et. (self - organize) •İşleri alt görevlere böl. Sprint Hedefi Sprint BacklogTakım Hızı Product Backlog
  • 21. Daily Scrum  Geliştirme ekibi içindeki günlük koordinasyon toplantıları,  En fazla 15 dakika,  Ayaktadır – Daily Stand-up da denir.  Amaç problem çözmek değildir.  Ekibin durumu raporlaması, farkındalığın oluşması sağlanır.  PO ve SM gözlemci olarak katılım sağlayabilir.
  • 22. Daily Scrum - 3 Soru 1 - Dün ne yaptın? 2 - Bugün ne yapacaksın? 3 - İlerlemeni engelleyen bir durum var mı?  Ekip içi taahhüt verilmiş olunur.  Sorunlar rapor edildiyse, follow-up görüşmelerle ayrıca irdelenir.
  • 23. Sprint Review  Takım tarafından geliştirilen ürünün demosu yapılır.  Tüm takım katılır.  Dış paydaşlar da katılım sağlayabilir.  PO tarafından ekibe geri bildirim yapılır.  Sprint hedefine ulaşılmış mı?  Ürünü iyileştirmek için öneriler…  PO tarafından kabul edildiği takdirde ürün canlı ortama kurulabilir.
  • 24. Sprint Retrospective  Her Sprint sonunda tüm takım katılır.  Sprint içerisinde iyi giden ve kötü giden hususlar neler?  Nasıl daha iyi çalışabiliriz? Yapmaya Başla Sona Erdir Yapmaya Devam Et
  • 25. Scrum Framework • Product Owner • Scrum Master • Dev. Team Roller • Sprint Planning • Sprint Review • Sprint Retrospective • Daily Scrum Toplantılar • Product Backlog • Sprint Backlog Yapılar
  • 26. Product Backlog  Tüm ürün gereksinimleri (user stories),  Hatalar,  Riskler (anti-value),  Teknik işlerden oluşur.  PO işleri önceliklendirir.  Backlog Grooming  Her Sprint öncesinde öncelikleri ve detay seviyeleri gözden geçirilir.  Takım işler için büyüklük tahminlerini ekler.
  • 27. Product Backlog - Örnek Backlog Item Tahmin Öncelik Test Aracını kur. 5 1 Sistem Yöneticisi olarak yeni bir kullanıcı eklemek istiyorum. 3 2 Sistem Yöneticisi olarak var olan bir kullanıcıya rol atamak istiyorum. 2 3 X sınıfını refactor et. 3 4 … … 5 … … 6
  • 28. User Story (Kullanıcı Hikayesi)  «<Rol / Aktör> olarak, <İş Faydasını> sağlamak için, <Fonksiyonu> gerçekleştirmek istiyorum.»  Örnek: Sistem Yöneticisi olarak, kullanıcının sisteme girebilmesi ve yetkileri çerçevesinde işlem yapabilmesi için, kullanıcıyı sisteme eklemek istiyorum.  Kabul Kriterleri:  Bir kullanıcı sisteme bir defa eklenebilir.  Kullanıcı bilgileri eksiksiz olmalıdır.  Kullanıcı adı ve soyadı en fazla 30 karakter olabilir vb.
  • 29. Sprint Backlog  Takım üyeleri hangi işleri Sprint’e alacaklarına kendileri karar verir – self organized.  Önceliklere göre iş alınır.  Product Backlog’taki işler teknik tasklara bölünür.
  • 30. Sprint Backlog - Örnek Görevler Kullanıcı Arayüzünü kodla İş mantığını kodla Veritabanı tablo ve alanlarını oluştur Birim testlerini kodla Sistem testlerini hazırla Yardım Kılavuzunu güncelle …… …..
  • 31. 2 Haftalık Bir Sprint - Özet
  • 32. Diğer Çevik Pratikler  Pair Programming,  Test Driven Development,  Continuous Integration,  Automated Testing,  Refactoring vb.