You are on page 1of 49

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

Yazlm Proje Yneticisi


11 Ekim 2011 Pozitif TV Sunumu
Sunumun Lisans Ayrntlar iin tklaynz http://tr.wikipedia.org/wiki/Creative_Commons

Sava DOAN

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

Yazlm Proje Ynetimi

Agile (evik) Yaklam

SCRUM
2

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Yazlm Proje Ynetimi
Uzun yllardr proje ynetimi ile ilgili farkl yntemler gelitirilmektedir. zellikle 1990 ylndan sonra yazlm proje ynetiminin nemi daha ok anlalmtr. Yazlm Projelerinin 3 ana unsuru vardr.

KALTE

1. KAPSAM 3. MALYET 2. ZAMAN


3

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Yazlm Proje Ynetimi
Proje yaam srecinde zaman ve maliyet tablosu aadaki gibidir.

Yazlm Proje Ynetimi


Yazlm projelerinin ana katmanlar

Mteri ihtiyalar

Analiz

Tasarm

rn

Test

Kodlama

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Yazlm Proje Ynetimi
Standish Group Chaos raporlar;
2004 2009

Belirsiz 53%

Baarl 29%
Baarsz 18%

Belirsiz 44%

Baarl 32% Baarsz 24%

Tahmini Yllk Zarar :

55 Milyar $
6

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Yazlm Proje Ynetimi
Proje Ynetimi asndan;

Sorunsuz 32% Sorunlu 68%

Yazlm Proje Ynetimi


Baarszlk dalm
SRE
%62

BTE

%49

BAKIM

%47

KATMA DEER (RIO)

%41

BEKLENT

%33

Tata Consultancy 2007 Raporu


8

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Yazlm Proje Ynetimi
Baarszln ana sebepleri :
1- Mterinin isteklerini doru analiz edememek. 2- Proje iin uygun ekibi kurmamak / kuramamak. 3- Gerekli bte ve kaynaklar ayrmamak. 4- Proje Ynetim metotlar uygulamadan, gelii gzel gelitirmek. 5- Proje sresince mteri ile iletiimden kanmak. 6- Yanl teknoloji ya da mimari seimleri. 7- irketin ynetimsel sorunlar. .
9

Yazlm Proje Ynetimi


lkemizde durum nasl ?
Baarl Proje Durumu
Durum Tam Baarl Oran % 4-5

Ksmen Baarl

% 45-50

pe Gidenler

% 45-50

Maltepe n. Y. Lisans Tezi ( Emin Boranda 2006 )


10

Agile (evik) Yaklam


Bir yazlm projesi, 6 ay ierisinde tamamlanmazsa ve projeye mterinizi dahil etmezseniz, baarya ulama ihtimaliniz zayftr.

11

Agile (evik) Yaklam


Yazlm projelerinde retilen zellik ve fonksiyonlarn yaklak %64 neredeyse hi kullanlmamaktadr.

12

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Agile (evik) Yaklam
evik (Agile) Manifesto 2000 ylnda Kent Beck ve 16 arkada tarafndan evik manifesto oluturulmutur.

Yazlm gelitirme amacyla retilen bu modelleme biimi, kapsad deerler, prensipler ve pratikler sayesinde geleneksel modellemelere metotlarna gre yazlmlara daha esnek ve kullanl biimde uygulanabilir.

13

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Agile (evik) Yaklam
evik (Agile) Manifesto
nemli Kiiler ve takm almas Az nemli Sre ve aralardan

alan yazlm
Mteri ile beraber almak

Detayl dokmantasyondan
Szleme ve anlamalardan

Deiime ak olup, uygulamak

Plana bal kalmaktan

14

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Agile (evik) Yaklam
evik Yazlmn Prensipleri: 1- lk ncelik, srekli, kaliteli yazlm teslimatyla mteri memnuniyetini salamaktr. 2- Proje ne kadar ilerlemi olursa olsun deiiklikler kabul edilir. evik yazlm sreleri deiiklikleri mteri avantajna dntrrler. 3- Mmkn olduunca ksa zaman aralklaryla (2-6 hafta aras) alan, kaliteli yazlm teslimat yaplr. 4- Analistler, uzmanlar, yazlmclar, testiler vs. tm ekip elemanlar bire bir iletiim halinde, birlikte alrlar. 5- yi projeler, motivasyonu yksek bireyler etrafnda kurulur. Ekip elemanlarna gerekli destek verilmeli, ihtiyalar karlanarak proje ile ilgili ekiplere tam gvenilmelidir.

15

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Agile (evik) Yaklam
evik Yazlmn Prensipleri: 6- Ekip ierisinde kaliteli bilgi ak iin yz yze iletiim nemlidir. 7- alan yazlm, projenin ilk geliim ltdr. 8- evik sreler, mmkn olduunca sabit hzl, srdrlebilir gelitirmeye nem verir. 9- Gl teknik alt yap ve tasarm eviklii arttrr. 10- Basitlik nemlidir. 11- En iyi mimariler, gereksinimler ve tasarmlar kendi kendini organize edebilen ekipler tarafndan yaratlr. 12- Dzenli aralklarla ekipler kendi yntemlerini gzden geirerek verimlilii arttrmak iin gerekli iyiletirmeleri yaparlar.

16

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Agile (evik) Yaklam
ZM
Mterini projeye dahil et
En nemli zellikleri ilk nce yap

Mmkn olan en ksa srede alan bir srm kar

Geri bildirimlere gre yeniden dzenle Mteri ile deerlendir

17

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Agile (evik) Yaklam
Klasik Yaklam

18

Agile (evik) Yaklam


evik Yaklam

19

Agile (evik) Yaklam


80 - 20 Pareto Kural:
Bir projenin %80 lik ksm, proje sresinin %20 sinde tamamlanr.

Geriye kalan %20'lik i ise zamann % 80'ini alr.

20

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Agile (evik) Yaklam
AVANTAJLARI
-Yazlm ekibinin motivasyonu srekli yksek seviyede olur.
- Ksa srede mteri memnuniyeti salanr. - retkenlikler artar. - Yazlm kalitesi artar. - Maliyetler der. - Yazlm projelerinin baars %55 e kadar art gsterebilir.

21

AGILE (EVK) YAKLAIM LE SCRUM YNTEM


Agile (evik) Yaklam
evik (Agile) Yaklam eitleri

Snrsal programlama (Extreme Programming-XP) evik Birletirilmi Sre (Agile Unified Process) SCRUM Test Gdml Gelitirme (Test-driven Development) evik bilgi Metodu (Agile Data Method) zellik gdml gelitirme (Feature-Driven Programming)

22

SCRUM
Tanm Scrum ad, Rugby sporundaki bir hcum taktiinin addr. Bu taktikte top, tm oyuncularla birlikte kar sahaya tanarak atak yaplmaktadr.

23

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
Scrumn alma Mant

24

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
Scrumn alma Mant

25

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
Scrumn Tanm Yllardr yazlm gelitirmede sre gelen proje ynetimi sorunlar, Scrum metodu doru uyguland taktirde byk lde ald grlmektedir. Bunun en temel nedeni Scrum Ekibi olgusudur. Scrumda 3 temel kavram vardr. 1- Roller (Roles) 2- Toplantlar (Meetings) 3- Kavramlar / Aralar (Artifacts)
26

SCRUM
Temel Kavramlar Scrumda 3 temel kavram vardr.
1- Roller (Roles)
rn Sahibi (Product Owner) Scrum Yneticisi (Scrum Master) Takm (Team)

2- Toplantlar (Meetings)
Sprint (Kou) Planlama (Sprint Planning) Sprint (Kou) Gzden Geirme (Sprint Review) Gnlk Scrum Toplants (Daily Scrum)

3- Kavramlar / Aralar (Artifacts)


rn Gereksinim Dokman (Product Backlog) Sprint ( Kou ) Dokman (Sprint Backlog) Sprint Kalan Zaman Grafii (Burndown Chart)
27

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
1- Roller (Roles)
rn Sahibi (Product Owner)
Scrum Yneticisi (Scrum Master) Takm (Team)

28

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
1- Roller (Roles) - rn Sahibi (Product Owner)
Projenin i deeri asndan geri dn ile sorumludur. Ekibin bir parasdr, mteri tarafndan grevlendirilmitir, detaylar takip eder, geri dnler verir.
rn Sahibinin sorumluluklar; Paylamc bir vizyonda almak Gereksinimleri toplamak Gereksinim nceliklerini ynetmek Her iterasyon sonunda rn kabul yapmak Projenin yatrm geri dnnden sorumlu olmak (ROI-Return On Investment)
29

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
1- Roller (Roles) - Scrum Yneticisi (Scrum Master)
Scrumda Geleneksel Proje Yneticisi rol yoktur.
Scrum Mastern grevleri; Takmn Scrumn temel deerlerine, pratiklerine ve kurallarna bal kalmasn garanti altna alr. Takm ve organizasyonu Scruma adapte eder. Takmn d etkilerden korunmasn ve sadece kendi iine younlaarak retkenliinin artmasndan sorumludur.
30

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
1- Roller (Roles) - Takm (Team)
Scrum Takm, devaml iletiim halinde olan ve tek bir hedefe ulamak iin mcadele eden kiilerden oluur.
Scrumda takmlarn zellikleri;

Gereksinimlerin sre tahminini yaparlar. 5 9 kiiden oluur. Kouya balarken hedefi seip, alma sonucunu belirlerler. Kou hedefine ulamak iin proje snrlar dahilinde her eyi yapmakta serbesttirler . Kendi kendilerini organize ederler. alma sonularn belli aralklar ile rn sahibine gsterirler .
Takm yeleri; gelitiriciler, testiler, analistler, mimarlar, tasarmclar ve hatta kullanclardan bile oluabilir. 31

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
2- Toplantlar (Meetings)
Sprint (Kou) Planlama (Sprint Planning)
Sprint (Kou) Gzden Geirme (Sprint Review) Gnlk Scrum Toplants (Daily Scrum)

32

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
2- Toplantlar (Meetings) - Sprint (Kou) Planlama (Sprint Planning)
Sre admlar aadakilerden oluur;
Geni kapsaml gereksinim listesinin karlmas Yaplacak datmlarn (bir veya daha fazla) k tarihinin ve fonksiyonel zelliklerinin belirlenmesi Baarl gelitirme iin uygun datm gereksinimlerinin belirlenmesi Datmlar iin gereksinimlerin eletirilmenin yaplmas (Hangi gereksinim hangi datmda yer alacak? ) Datmlar iin takmlarn belirlenmesi Risk deerlendirmesi ve risk kontrollerinin belirlenmesi Gzden geirmeler ve olas gereksinim deiikliklerinin belirlenmesi Gelitirme aralar ve altyapsnn onaylanmas Datm maliyeti ve gelitirme, materyal toplama ve pazarlama maliyetlerinin hesaplanmas Ynetimi ve destekleri gzden geirme ve onaylama
33

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
2- Toplantlar (Meetings) - Gnlk Scrum Toplants (Daily Scrum)
Kou baladktan sonra takm srecin baka bir anahtar aktivitesi olan Gnlk Scrum Toplantlarn gerekletirir. Bu ksa toplant (15 dk) her i gnnde belirlenen saatte gerekletirilir ve tm takm katlr (genelde sabahlar). Takmn ilerleyiini ve karlatklar engelleri grmek iin nemli bir frsattr.
Teker teker tm ekip yeleri, u sorularn cevaplarn verir; Dn ne yaptm? Bugn ne yapacam? nmde olan engeller ve karlatm sorunlar neler? Scrum Master, toplant esnasnda notlar tutar ve sorun yaayan yelere toplantdan sonra yardmc olur.
34

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
2- Toplantlar (Meetings) - Gnlk Scrum Toplants (Daily Scrum)
Gnlk Scrum toplants kesinlikle bir tartma platformu deil, ilerin ne durumda olduu ve varsa sorunlarn paylald bir toplantdr, eer tartma gerekiyorsa bu toplantdan sonra gerekletirilir.
Bu toplantlar ok faydaldr ve sonular aadaki gibidir: Engeller olutu ise ynetim tarafndan ortadan kaldrlr Daha az gereksiz tekrarlanm efor harcanr Takm yeleri arasnda daha iyi birliktelik ve uyum salanr Hedef netleir ve takm tarafndan kabul edilir Takm iletiimini salar Takmn nnde yaptklarn aklayacak olmak bireyi baarl olma ynnde tevik eder Takm dinamii ve etii ina edilir
35

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
2- Toplantlar (Meetings)-Sprint (Kou) Gzden Geirme (Sprint Review)
Her sprint (kou) balangcnda, planlama toplants yaplr. Toplantnn ilk ksmnda rn Sahibi ile Takm, rn Gereksinim Listesini gzden geirir ve gereksinim elemanlarnn hedeflerini ve ieriklerini belirler. Toplantnn ikinci ksmnda, takm yeleri rn Gereksinim Listesinin en stnden (rn Sahibi tarafndan kritik, i deeri katan gereksinimlere yksek ncelikler verilir) balayarak kou sonucunda gerekletirilecek gereksinimlerden oluan Kou Gereksinim Listesini olutururlar. Bu Scrumn anahtar uygulamasdr. Takm, rn Sahibi tarafndan belirtilen nceliklendirilmi gereksinimlerden ne kadarn yapacan belirler ve taahht eder .
36

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
3- Kavramlar / Aralar (Artifacts) - rn Gereksinim Dokman (Product Backlog) Proje boyunca yaplmas gereken i elemanlarnn basit bir listesidir. Bu listeye herhangi biri tarafndan ekleme yaplabilir. Ama ancak ve ancak rn Sahibi, takm tarafndan gerekletirilecek gereksinimlerin ncelik srasn belirleyebilir. Elbette bunu paydalar ve takmla tartarak yapmaldr. rn Gereksinim Listesi canl bir dokmandr, geerli ve kullanl olmas iin devaml bakm gerekir. Birok yeni eleman zamanla eklenebilir, birok eleman daha kk paralara ayrtrlabilir, baz gereksinimlerin artk gereksiz veya anlamsz olduu fark edilip silinebilir. Listedeki sralamalar her gn deiiklik gsterebilir. rn Gereksinim Listesi, genellikle kullanc hikayelerinden oluur ve kullanc bak asndan baklr.
37

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
3- Kavramlar / Aralar (Artifacts) - rn Gereksinim Dokman (Product Backlog) Product Backlog listesindeki sra ile en ncelikli olanlardr. Hibir zaman ncelii dk bir zellik veya fonksiyon ncelii yksek bir zellik veya fonksiyondan nce gelitirilemez. Bu balamda baz sprint lerde proje takm, Product Backlogdan 4 eleman, baz sprintlerde 25 eleman seebilir. Seilen zellik ve fonksiyonlar Sprint Backlog denilen ikinci bir listeye aktarlr. Proje takm bir sonraki sprint balangcna kadar bir daha Product Backloga bakmaz, o sprint dahilinde sadece ilgili Sprint Backlog listesine odaklanr. Sprint Backlog dahilindeki her zellik veya fonksiyon iin maksimum 3 gnlk gelitirme sresi verilir.

38

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
3- Kavramlar / Aralar (Artifacts) - rn Gereksinim Dokman (Product Backlog) Kullanc Hikayeleri ( User Story ) Her tr kullancnn, sistem ierisindeki tm hareket ve eylemleri baz alnarak hazrlanan senaryolardr. Bir tek eylem baz alnarak, kk paralar halinde hazrlanmas nemlidir. Daha sonra bu senaryolara ncelik derecelendirmesi ve zorluk derecesini ifade eden hikaye puan (story points) verilir. ncelik deerleri 1 ile 10 arasnda ardk verilirken, Puanlamalar 1, 2, 3, 5, 8, 13, 21, 34, eklinde verilir. Sre bir ok etkene bal olarak, deiken olduu iin kullanlmaz. Scrum Ekibinin 1 haftada tamamlad toplam hikaye puanlar ile projenin toplam puan, proje sresini zaten verecektir.
39

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
3- Kavramlar / Aralar (Artifacts) - rn Gereksinim Dokman (Product Backlog) Kullanc Hikayeleri ( User Story ) Hikaye Oluturmada INVEST ( YATIRIM )Kural : I (Independent - Bamsz) : Hikayeler birbirinden bamsz olmal. N (Negotiable - Tartlabilir): Kendi bana bir anlam ifade etmeli, baml olmamal. eresinde baka Kullanc Senaryosu barndrmamal. V (Valuable - Deerli): Mutlaka bir deer ifade etmeli. E (Estimable - Deer): Byklk verilebilir olmal. S (Small - Kk): Yeterince ksa ve kk olmal. T (Testable Test Edilen): Test edilebilir olmal.

40

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM

rnek Bir Kullanc Hikayesi

41

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM

rnek Bir rn Gereksinim Dokman (Product Backlog)

42

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
3- Kavramlar / Aralar (Artifacts) - Sprint ( Kou ) Dokman (Sprint Backlog) Sprint backlog, mevcut sprint iin seilmi, product backlogdan elde edilmi i ve grevleri kapsar. Sprint backlogdaki ilerin amac, sprint sonunda son rnn bir paras olan bir ilevsellii ya da alabilir bir paray elde etmektir. Takm tarafndan sprint planlama toplantsnn ikinci blmnde belirlenmektedir. Her grev 4 ile 16 saat arasnda olmaldr. 16 saatten byk grevler, yeterince iyi tanmlanmam anlamna gelmektedir. Sprint backlog sadece takm tarafndan deitirilmektedir.

43

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM

rnek Bir Sprint ( Kou ) Dokman (Sprint Backlog)

44

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM
3- Kavramlar / Aralar (Artifacts) - Sprint Kalan Zaman Grafii (Burndown Chart) Bu grafik, iterasyon (sprint) boyunca ilerin ne kadarnn yapld ile normalde ne kadar yaplmas gerektiini karlatrlabilmesini salar. Bir iterasyonun toplam 100 saatten ve 20 gnden olutuunu farz edelim. Normal olarak beklenen her gn 5 saatlik bir iin yaplmasdr. Takm elemanlar her gn ne kadarlk bir i gerekletikleri bilgisini girerler.
stenen isteklerin iterasyon sresi ierisinde gerekleip gerekleemeyecei bu ema yardmyla izlenebilmektedir.

45

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM

Scrum Tahtas ( Scrum Board)

46

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

SCRUM

Scrum Tahtas ( Scrum Board)

47

SCRUM

Kimler Kullanyor

PY Metotlar Kullanm Oranlar (2008)


84%

100%

80%
60% 40% 20% 0%
SCRUM Iterative XP TDD
48

47% 38% 38%

AGILE (EVK) YAKLAIM LE SCRUM YNTEM

TEEKKRLER

Yazlm Proje Yneticisi


49

Sava DOAN