2. CO TO JEST SKALOWANIE AGILE?
•ZWINNOŚĆ(ANG. AGILITY) –ZDOLNOŚĆDOSZYBKIEJLECZPRZEMYŚLANEJZMIANY
•POLEGANADOSTOSOWANIUPRODUKTU[INFORMATYCZNEGO] DOZMIENIAJĄCYCHSIĘWYMAGAŃBEZOBNIŻANIAJEGOJAKOŚCI
•DOŚWIADCZENIEPOKAZAŁOJUŻ, ŻEZESPOŁYSCRUMSĄBARDZOWYDAJNEPRZYBUDOWANIUPRODUKTÓW, SCRUMJESTJEDNAKMODELEMDLAJEDNEGOMAŁEGOZESPOŁU
•SKALOWANIETOROZWIĄZANIEPROBLEMU–JAKUTRZYMAĆZWINNOŚĆIINNEKORZYŚCISCRUM(IINNYCHMETODAGILE) PRZYWIELUZESPOŁACH
3. WYMIARYSKALOWANIA
1
2
3
4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
MAŁESKALOWANIE
•Do ~55 osób, 4-6 teamów max.
•Wiele problemów można nadal rozwiązać spotykając się całą grupą
•Wystarcza jeden backlogi jeden PO
DUŻESKALOWANIE
•Więcej osób, wiele teamów
•Konieczne jakieś dzielnie produktu na moduły/obszary
•Nie wystarcza jeden PO
4. Wymagania
Komunikacja
Produkt
ZESPÓŁ 1
ZESPÓŁ 2
ZESPÓŁ 3
ZESPÓŁ 4
Produkt
Efsdfsdfsdfs
Sdfsdfsdfsdfs
Sfsdfsdfs
Fsdfsdfsadfsadfsa
Fsadfasfsadfasdfasd
Sadfsadfasdfasdfasdfsadfsad
Safdsadfsadfsadvadf sav
af asd asdvc asdvc dsfv
Sdf vsdfv dsfv sdf vasf
Asv asdf sadf asdfdsafd
V adfv adfvfdv sdfv dfv f a
adfv dfv dafv dfavadfv
asdfa sdfsaf asdf asdf asdf
adfasdfsadfsadf saf
5. Wymagania Komunikacja Produkt
1
2
3
Moduł 1
Efsdfsdfsdfs
Sdfsdfsdfsdfs
Sfsdfsdfs
Fsdfsdfsadfsadfsa
Fsadfasfsadfasdfasd
Sadfsadfasdfasdfasdfsadfsad
Safdsadfsadfsadvadf sav
af asd asdvc asdvc dsfv
Sdf vsdfv dsfv sdf vasf
Asv asdf sadf asdfdsafd
V adfv adfvfdv sdfv dfv f a
adfv dfv dafv dfavadfv
asdfa sdfsaf asdf asdf asdf
saf
Moduł 2
Efsdfsdfsdfs
Sdfsdfsdfsdfs
Sfsdfsdfs
Fsdfsdfsadfsadfsa
Fsadfasfsadfasdfasd
Sadfsadfasdfasdfasdfsadfsad
Safdsadfsadfsadvadf sav
af asd asdvc asdvc dsfv
Sdf vsdfv dsfv sdf vasf
Asv asdf sadf asdfdsafd
V adfv adfvfdv sdfv dfv f a
adfv dfv dafv dfavadfv
asdfa sdfsaf asdf asdf asdf
adfasdfsadfsadf saf
DIABEŁ TKWI W
WYMAGANIACH
PRODUKT
4
1
2
3
4
16. O CZYM NALEŻY PAMIĘTAĆ
•WSZYSTKIEMETODYIPRAKTYKIZWINNESĄZASTOSOWANIEMEMPIRYZMUDOTWORZENIAOPROGRAMOWANIA
•EMPIRYZMNIEMOŻEBYĆZGÓRYZAPLANOWANY–TOPRZECIWIEŃSTWOPODEJŚCIAPREDYKCYJNEGO
•ZMIANYPROCESUIKULTURYNIEDASIĘDOKOŃCANARZUCIĆODGÓRNIE
•PROCESEMPIRYCZNYNIEMASTANUKOŃCOWEGO
•KAŻDAMETODAJESTKROKIEMKUDALSZEMUROZWOJOWI
•SAMPROCESNAPOZIOMIESTRUKTURYIZARZĄDZANIANIEWYSTARCZY, NIEZBĘDNESĄODPOWIEDNIEPRAKTYKITECHNICZNE
22. NIE MA NIC LEPSZEGO NIŻ ZESPÓŁ AGILE
•MAŁY
•SAMO-OGRANIZUJĄCYSIĘ
•WSKROŚ-FUNKCJONALNY
•ZESPÓŁPROFESJONALISTÓW
•DOSTARCZAWARTOŚĆPOPRZEZREALIZOWANIEUSERSTORY
•ZORIENTOWANYNAOSIĄGANIECELÓWIREALIZOWANIEWIZJIPRODUKTU
Agile Update 2014
22
23. KRÓTSZY TIME TO MARKET
CZAS
DOSTARCZANIE WARTOŚCI
Agile Update 2014
23
24. ALE JAK TO ZROBIĆ W DUŻEJ ORGANIZACJI?
Agile Update 2014
24
?
26. ZSYNCHRONIZUJ ZESPOŁY
Agile Update 2014
26
Release on Demand
Major
Release
Customer Upgrade
Customer Preview
Major
Release
New
Feature
Develop on Cadence
PI
PI
PI
PI
PI
27. SKORZYSTAJ ZE SCRUM + XP
Agile Update 2014
27
Agile Architecture
Continuous Integration
Test-First
Refactoring
Pair Work
Collective Ownership
28. ZOPTYMALIZUJ CAŁOŚĆ
Agile Update 2014
28
“System musi być zarządzany. Nie będzie się sam zarządzał. Komponenty pozostawione same sobie, staną się samolubnymi, konkurencyjnymi, niezależnymi centrami zysku, i w dlatego zniszczą system. […]
Sekretem jest współpraca pomiędzy komponentami skupiona na celu organizacji.”
—W. Edwards Deming
34. CO WYBIERASZ?
NAUKA NA BŁĘDACH I EKSPERYMENTOWANIE
(2-5 LAT)
Agile Update 2014
34
•Stwórz Backlog
•Zbuduj Zespoły
•Przeszkol organizację
•Wystartuj pierwszy pociąg
SPRAWDZONE ROZWIĄZANIE
(MIESIĄC?)
41. Szybszedostarczaniewartościbiznesowej–Testy regresji(100% logikibiznesowej)
Szybka identyfikacja defektu (jeszcze na etapie programowania)
Precyzyjnaidentyfikacjadefektu(z dokładnościądo biznesowejodpowiedzialnościklasy)
Bezpieczniejszyrefactoring kodu
mającopisaneodpowiedzialnościbiznesowemożemyje świadomiezmienić
Bezpieczeństwozmian
Zdobycieczasunatesty eksploracyjne
Cel
Test DrivenDevelopment
Testy pisane przed kodem produkcyjnym
Testy pisane z perspektywy biznesowej
Miara pokrycia kodu testami
Jak osiągnąć cel?
Testy jednostkowe
42. Szybsze dostarczanie wartości biznesowej
Posiadanie zawsze-aktualnej dokumentacji biznesowej
Większa elastyczność w zarządzaniu projektem
Stworzenie zespołów cross-feature
Skrócenie okresu “wejścia do projektu”
Macierz pokrycia wymagań
Testy regresji (główne ścieżki)
Cel
Zautomatyzowane testy akceptacyjne
“Specyfikacja poprzez przykłady”
BDD Framework (JBehave, SPOCK)
Jak osiągnąć cel?
43. Continuum testów (od testów automatyzowalnych do eksploracyjnych)
“Nauka domeny, projektowanie i wykonywanie testów oraz analiza ich wyników jednocześnie”
Analogia
–Spacer po parku
–Przedzieranie się przez dżunglę
Testy eksploracyjne -Wprowadzenie
44. Zmniejszenie liczby defektów produkcyjnych
Przetestowanie biznesowych przypadków brzegowych
Walidacja modelu biznesowego wg. którego działa aplikacja
Wsparcie dla innowacji w testowaniu
Cel
Uczyć się biznesu by identyfikować biznesowe przypadki brzegowe
Uczyć się krytycznego myślenia
Debug
Jak osiągnąć cel?
Testy eksploracyjne
45. 14-11-3
Testy nie-funkcjonalne
Uniknięcie „sprintów stabilizacyjnych”
Rozszerzenie horyzontów ludzi biznesu o aspekty nie-funkcjonalne
Cel
Metoda perspektyw
CUPRIMDSO
FURPS
Cykliczna walidacja
Jak osiągnąć cel?
46. 14-11-3
Manifesto for Agile Software Development
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.