Wprowadzenie do Agile
Agile Development Day 2014
v. 1.02
Rewolucje
1. Myśliwi i zbieracze
2. Rewolucja Rolnicza
3. Rewolucja Przemysłowa
4. Rewolucja Informacyjna
22014-06-14, Agile Development
Day
Waterfall
Model Waterfall
4
2014-06-14, Agile Development
Day
Model Waterfall
2014-06-14, Agile Development
Day 5
„Wierzę w ten koncept, ale implementacja
opisana powyżej jest ryzykowana i naraża się na
porażkę.”
Dr. Winstone W. Royce, Preceedings, IEE WESCON, sierpień 1970
Fakty Waterfall
• 52% wymagań zaimplementowane
• 64% powstałej funkcjonalności rzadko używane
• 34% projektów zakończonych sukcesem
• Przedłużający się czas trwania projektu odracza
zysk
(Source: Standish Report 2003)
62014-06-14, Agile Development
Day
Fakty Waterfall
• Niejasne wymagania
• Zmiana staje się coraz bardziej kosztowna
• Klienci nie dostają tego, czego oczekują
• Zapewnienie jakości (QA) zostaje
załamane
– Brak czasu na testowanie
– Późna integracja oznacza późne pojawianie
się błędów
72014-06-14, Agile Development
Day
Fakty Waterfall
8
Wymagania
56%
Kod
7%
Projekt
27%
Inne
10%
Źródło błędów w oprogramowaniu
Źródło: Software Testing in the Real World, Edward Kit 1995
2014-06-14, Agile Development
Day
Rezultat Implementacji
Waterfall
92014-06-14, Agile Development
Day
© 2005 Paragon Innovations, Inc. All rights reserved
AGILE
10
Manifesto for Agile Software Development
Poprzez wytwarzanie oprogramowania oraz pomaganie innym
w tym zakresie odkrywamy lepsze sposoby realizowania tej
pracy. W wyniku tych doświadczeń zaczęliśmy przedkładać:
Ludzi i ich interakcje ponad procedury i narzędzia.
Działające oprogramowanie nad wyczerpującą dokumentację.
Współpracę z klientem nad negocjację umów.
Reagowanie na zmiany nad realizowanie planu.
Chociaż doceniamy rzeczy wymienione po prawej stronie, to
jednak bardziej cenimy pozycje po lewej.
112014-06-14, Agile Development
Day
Zasady Agile
1. Naszym najwyższym priorytetem jest zadowolić
klienta poprzez wczesne i ciągłe dostarczanie
wartościowego oprogramowania.
2. Zmiany w wymaganiach, nawet późno w
projekcie są mile widziane. Proces Agile
zaprzęga zmianę do przewagi we
współzawodnictwie na korzyść klienta.
3. Dostarczaj oprogramowanie często, w
odstępach czasu od kilku tygodni do kilku
miesięcy, preferując mniejsze odstępy czasowe.
122014-06-14, Agile Development
Day
Zasady Agile
4. Ludzie biznesu i deweloperzy muszą pracować
razem codziennie przez cały projekt.
5. Buduj projekty w opraciu o zmotywowane
indywidualności. Daj im środowisko i wsparcie,
którego potrzebują i zaufaj im, że praca zostanie
wykonana.
6. Najskuteczniejszą i najwydajniejszą metodą
przekazywania informacji do i w zespole
deweloperów jest rozmowa w cztery oczy.
132014-06-14, Agile Development
Day
Zasady Agile
7. Działające oprogramowanie jest
podstawową miarą postępu.
8. Procesy Agile promują trwały rozwój.
Sponsorzy, deweloperzy i użytkownicy
powinni być w stanie utrzymać ciągłe
tempo nieskończenie.
9. Ciągła koncentracja na technicznej
doskonałości i dobrym projekcie (design)
poprawia zwinność (agility).
142014-06-14, Agile Development
Day
Zasady Agile
10. Prostota – sztuka zwiększania ilości pracy
niewykonanej – jest niezbędna.
11. Najlepsze architektury, wymagania i projekty
wyłaniają się z samo-organizujących się zespołów.
12. W regularnych odstępach czasu, zespół
zastanawia się jak stać się bardziej wydajnym, a
następnie odpowiednio dostraja się i dopasowuje
swoje zachowanie
http://agilemanifesto.org/principles.html
152014-06-14, Agile Development
Day
Cechy Agile
• Iteracje
• Przejrzystość
• Prostota
• Refactoring
• Działający produkt na koniec każdej iteracji
Produkt jest potencjalnie dostarczalny
(MMF/MVP)
162014-06-14, Agile Development
Day
Cechy Agile
• Zmiana wymagań jest możliwa
• Samoorganizujący się, samowystarczalny
zespół profesjonalistów
• Małe zespoły
• Nieformalna komunikacja – w cztery oczy
• Regularna adaptacja – inspect and adapt
172014-06-14, Agile Development
Day
Fazy iteracji w Agile
18
Planowanie
Wymagania
Projekt
Implementacja
Testowanie
Utrzymanie
2014-06-14, Agile Development
Day
Fazy iteracji w Agile
192014-06-14, Agile Development
Day
Żelazny Trójkąt Projektu
20
Jakość
Zasoby
W Agile Zasoby i Harmonogram są stałe
2014-06-14, Agile Development
Day
Kiedy projekt odniósł sukces?
• Zespół dostarczył kolejny przyrost
produktu
– na koniec iteracji
– zintegrowany
– przetestowany
• Definicja DONE jest spełniona
• Biznes akceptuje wynik Iteracji
• Produkt jest potencjalnie dostarczalny
212014-06-14, Agile Development
Day
WATERFALL VS AGILE
Porównanie
22
Przewidywalny vs Empiryczny
23
Zaczynamy z
planem i
wszystkimi
wymaganiami
Kończymy ze wszystkimi
wymaganiami
zaspokojonymi
Przewidywalny
Empiryczny
Zaczynamy z Celami
i częścią
wymagań
Kończymy osiągając
Cele
Inspect & adapt
2014-06-14, Agile Development
Day
Waterfall vs Agile
2014-06-14, Agile Development
Day 24
Waterfall vs Agile
2014-06-14, Agile Development
Day 25
Waterfall vs Agile
• Co się zmienia
– Interesariusze mają lepszą kontrolę nad
wymaganiami
– Dostarczenie wartości dla biznesu jest szybsze
– Wyższa jakość
– Dokładniejsze raportowanie
262014-06-14, Agile Development
Day
Waterfall vs Agile
– Duża zdolność do zmian i adaptacji
– Wyższe morale zespołu
– Większa kontrola ryzyka
– Przewidywalność
– Produkt ma większą wartość
272014-06-14, Agile Development
Day
Waterfall vs Agile
282014-06-14, Agile Development
Day
Metody Agile
• Lean
• Kanban
• Scrum
• Extreme Programming (XP)
• Agile Unified Process (AgileUP)
• Crystal
• Feature Driven Development
• Dynamic Systems Development Method
• Lean Startup
292014-06-14, Agile Development
Day
Wpływy zasad i praktyk metod
Agile
30
Lean
Agile
Kanban
Scrum
XP
2014-06-14, Agile Development
Day
312014-06-14, Agile Development
Day
Dziękuję za uwagę
2014-06-14, Agile Development
Day
32
krystian.kaczor@qagile.pl
@krystian_kaczor
www.qagile.pl
Krystian Kaczor

Wprowadzenie do Agile

  • 1.
    Wprowadzenie do Agile AgileDevelopment Day 2014 v. 1.02
  • 2.
    Rewolucje 1. Myśliwi izbieracze 2. Rewolucja Rolnicza 3. Rewolucja Przemysłowa 4. Rewolucja Informacyjna 22014-06-14, Agile Development Day
  • 3.
  • 4.
  • 5.
    Model Waterfall 2014-06-14, AgileDevelopment Day 5 „Wierzę w ten koncept, ale implementacja opisana powyżej jest ryzykowana i naraża się na porażkę.” Dr. Winstone W. Royce, Preceedings, IEE WESCON, sierpień 1970
  • 6.
    Fakty Waterfall • 52%wymagań zaimplementowane • 64% powstałej funkcjonalności rzadko używane • 34% projektów zakończonych sukcesem • Przedłużający się czas trwania projektu odracza zysk (Source: Standish Report 2003) 62014-06-14, Agile Development Day
  • 7.
    Fakty Waterfall • Niejasnewymagania • Zmiana staje się coraz bardziej kosztowna • Klienci nie dostają tego, czego oczekują • Zapewnienie jakości (QA) zostaje załamane – Brak czasu na testowanie – Późna integracja oznacza późne pojawianie się błędów 72014-06-14, Agile Development Day
  • 8.
    Fakty Waterfall 8 Wymagania 56% Kod 7% Projekt 27% Inne 10% Źródło błędóww oprogramowaniu Źródło: Software Testing in the Real World, Edward Kit 1995 2014-06-14, Agile Development Day
  • 9.
    Rezultat Implementacji Waterfall 92014-06-14, AgileDevelopment Day © 2005 Paragon Innovations, Inc. All rights reserved
  • 10.
  • 11.
    Manifesto for AgileSoftware Development Poprzez wytwarzanie oprogramowania oraz pomaganie innym w tym zakresie odkrywamy lepsze sposoby realizowania tej pracy. W wyniku tych doświadczeń zaczęliśmy przedkładać: Ludzi i ich interakcje ponad procedury i narzędzia. Działające oprogramowanie nad wyczerpującą dokumentację. Współpracę z klientem nad negocjację umów. Reagowanie na zmiany nad realizowanie planu. Chociaż doceniamy rzeczy wymienione po prawej stronie, to jednak bardziej cenimy pozycje po lewej. 112014-06-14, Agile Development Day
  • 12.
    Zasady Agile 1. Naszymnajwyższym priorytetem jest zadowolić klienta poprzez wczesne i ciągłe dostarczanie wartościowego oprogramowania. 2. Zmiany w wymaganiach, nawet późno w projekcie są mile widziane. Proces Agile zaprzęga zmianę do przewagi we współzawodnictwie na korzyść klienta. 3. Dostarczaj oprogramowanie często, w odstępach czasu od kilku tygodni do kilku miesięcy, preferując mniejsze odstępy czasowe. 122014-06-14, Agile Development Day
  • 13.
    Zasady Agile 4. Ludziebiznesu i deweloperzy muszą pracować razem codziennie przez cały projekt. 5. Buduj projekty w opraciu o zmotywowane indywidualności. Daj im środowisko i wsparcie, którego potrzebują i zaufaj im, że praca zostanie wykonana. 6. Najskuteczniejszą i najwydajniejszą metodą przekazywania informacji do i w zespole deweloperów jest rozmowa w cztery oczy. 132014-06-14, Agile Development Day
  • 14.
    Zasady Agile 7. Działająceoprogramowanie jest podstawową miarą postępu. 8. Procesy Agile promują trwały rozwój. Sponsorzy, deweloperzy i użytkownicy powinni być w stanie utrzymać ciągłe tempo nieskończenie. 9. Ciągła koncentracja na technicznej doskonałości i dobrym projekcie (design) poprawia zwinność (agility). 142014-06-14, Agile Development Day
  • 15.
    Zasady Agile 10. Prostota– sztuka zwiększania ilości pracy niewykonanej – jest niezbędna. 11. Najlepsze architektury, wymagania i projekty wyłaniają się z samo-organizujących się zespołów. 12. W regularnych odstępach czasu, zespół zastanawia się jak stać się bardziej wydajnym, a następnie odpowiednio dostraja się i dopasowuje swoje zachowanie http://agilemanifesto.org/principles.html 152014-06-14, Agile Development Day
  • 16.
    Cechy Agile • Iteracje •Przejrzystość • Prostota • Refactoring • Działający produkt na koniec każdej iteracji Produkt jest potencjalnie dostarczalny (MMF/MVP) 162014-06-14, Agile Development Day
  • 17.
    Cechy Agile • Zmianawymagań jest możliwa • Samoorganizujący się, samowystarczalny zespół profesjonalistów • Małe zespoły • Nieformalna komunikacja – w cztery oczy • Regularna adaptacja – inspect and adapt 172014-06-14, Agile Development Day
  • 18.
    Fazy iteracji wAgile 18 Planowanie Wymagania Projekt Implementacja Testowanie Utrzymanie 2014-06-14, Agile Development Day
  • 19.
    Fazy iteracji wAgile 192014-06-14, Agile Development Day
  • 20.
    Żelazny Trójkąt Projektu 20 Jakość Zasoby WAgile Zasoby i Harmonogram są stałe 2014-06-14, Agile Development Day
  • 21.
    Kiedy projekt odniósłsukces? • Zespół dostarczył kolejny przyrost produktu – na koniec iteracji – zintegrowany – przetestowany • Definicja DONE jest spełniona • Biznes akceptuje wynik Iteracji • Produkt jest potencjalnie dostarczalny 212014-06-14, Agile Development Day
  • 22.
  • 23.
    Przewidywalny vs Empiryczny 23 Zaczynamyz planem i wszystkimi wymaganiami Kończymy ze wszystkimi wymaganiami zaspokojonymi Przewidywalny Empiryczny Zaczynamy z Celami i częścią wymagań Kończymy osiągając Cele Inspect & adapt 2014-06-14, Agile Development Day
  • 24.
    Waterfall vs Agile 2014-06-14,Agile Development Day 24
  • 25.
    Waterfall vs Agile 2014-06-14,Agile Development Day 25
  • 26.
    Waterfall vs Agile •Co się zmienia – Interesariusze mają lepszą kontrolę nad wymaganiami – Dostarczenie wartości dla biznesu jest szybsze – Wyższa jakość – Dokładniejsze raportowanie 262014-06-14, Agile Development Day
  • 27.
    Waterfall vs Agile –Duża zdolność do zmian i adaptacji – Wyższe morale zespołu – Większa kontrola ryzyka – Przewidywalność – Produkt ma większą wartość 272014-06-14, Agile Development Day
  • 28.
    Waterfall vs Agile 282014-06-14,Agile Development Day
  • 29.
    Metody Agile • Lean •Kanban • Scrum • Extreme Programming (XP) • Agile Unified Process (AgileUP) • Crystal • Feature Driven Development • Dynamic Systems Development Method • Lean Startup 292014-06-14, Agile Development Day
  • 30.
    Wpływy zasad ipraktyk metod Agile 30 Lean Agile Kanban Scrum XP 2014-06-14, Agile Development Day
  • 31.
  • 32.
    Dziękuję za uwagę 2014-06-14,Agile Development Day 32 krystian.kaczor@qagile.pl @krystian_kaczor www.qagile.pl Krystian Kaczor

Editor's Notes