Zwinny samuraj
Jak programują mistrzowie zwinności
Czym wyróżniają się zwinne projekty?
Jak działa zwinne planowanie?
Co dają testy jednostkowe i ciągła integracja?
Konkurencja na rynku oprogramowania, oczekiwania klientów oraz tempo życia wymagają
zmiany podejścia do wytwarzania aplikacji. Klienci nie chcą już czekać miesiącami na
pierwszą wersję zamówionego produktu - chcą zobaczyć cokolwiek już za tydzień!
Niemożliwe? A jednak! Jeśli zastosujesz zwinne praktyki, masz szansę błyskawicznie
pokazać klientowi działające zręby aplikacji, a w kolejnych (krótkich!) iteracjach
kolejne efekty. Zobacz, jaki wpływ na efektywność może mieć zwinność. Sprawdź, jak
dobrać ludzi do zwinnego zespołu oraz jak nim zarządzać.
Jonathan w swojej książce zaprezentuje Ci wszystko, co musisz wiedzieć na temat
zwinnych praktyk. Dowiesz się, jak ważny jest zespół, co go napędza i jakie role
pełnią jego członkowie. Najpierw poznasz największe zagrożenia dla projektu i zalety
tablic koncepcyjnych oraz przygotujesz się do rozpoczęcia fazy realizacji. Kolejne
rozdziały zawierają niezbędne informacje poświęcone planowaniu, szacowaniu oraz
zarządzaniu iteracjami. Dodatkowo na własne oczy zobaczysz, jak ważne są testy
jednostkowe, refaktoryzacja oraz ciągła integracja w procesie wytwarzania
oprogramowania. Książka ta jest idealnym źródłem informacji dla członków zwinnych
zespołów oraz osób, które kolejny projekt chciałyby zrealizować z wykorzystaniem
właśnie tej metodologii.
Cechy charakterystyczne zwinnych projektów
Role w projekcie
Wskazówki w kwestii tworzenia zwinnego zespołu
Tablice koncepcyjne
Identyfikacja istotnego ryzyka
Definiowanie celu
Zbieranie historii użytkowników
Szacowanie
Planowanie
Zarządzanie iteracjami
Plan komunikacji
Codzienny miniprzegląd
Testy jednostkowe
Refaktoryzacja kodu
Programowanie oparte na testach
Potencjał ciągłej integracji
Podziękowania (9)
Dobrze Cię widzieć (11)
Część I. Wprowadzenie (15)
Rozdział 1. Zwinność w pigułce (17)
- 1.1. Dostarczaj czegoś wartościowego co tydzień (18)
- 1.2. Jak działa zwinne planowanie? (21)
- 1.3. Zrobione oznacza zrobione (23)
- 1.4. Trzy proste prawdy (24)
Rozdział 2. Poznaj swój zwinny zespół (27)
- 2.1. Czym wyróżniają się zwinne projekty? (28)
- 2.2. Co napędza zwinny zespół (30)
- 2.3. Typowe role (36)
- 2.4. Wskazówki co do tworzenia Twojego zwinnego zespołu (45)
Część II. Inicjacja projektu zwinnego (49)
Rozdział 3. Jak zapakować autokar (51)
- 3.1. Co zabija większość projektów (52)
- 3.2. Zadawaj trudne pytania (52)
- 3.3. Zrób tablicę koncepcyjną (54)
- 3.4. Jak to działa (54)
- 3.5. Tablica koncepcyjna w pigułce (55)
Rozdział 4. Kontekst projektu (57)
- 4.1. Zapytaj: po co tu jesteśmy? (58)
- 4.2. Tworzenie krótkiego podsumowania (60)
- 4.3. Projekt opakowania (63)
- 4.4. Stwórz listę "NIE" (66)
- 4.5. Poznaj swoich sąsiadów (68)
Rozdział 5. Realizacja (75)
- 5.1. Pokaż rozwiązanie (76)
- 5.2. Zapytaj, co nie da nam spokojnie spać (77)
- 5.3. Określ rozmiar (81)
- 5.4. Wyjaśnij dokładnie, co zamierzasz dostarczyć (83)
- 5.5. Pokaż, co się będzie działo (90)
Część III. Planowanie zwinnego projektu (97)
Rozdział 6. Zbieranie historii użytkowników (99)
- 6.1. Problem z dokumentacją (100)
- 6.2. Wprowadź historie użytkownika (103)
- 6.3. Cechy dobrych historii użytkownika (104)
- 6.4. Jak przeprowadzić warsztaty zbierania historii (112)
Rozdział 7. Szacowanie: piękna sztuka zgadywania (119)
- 7.1. Problem z wysokopoziomowymi szacunkami (120)
- 7.2. Zamiana cytryn w lemoniadę (121)
- 7.3. Jak to działa? (127)
Rozdział 8. Zwinne planowanie: zmagania z rzeczywistością (135)
- 8.1. Problemy z planowaniem statycznym (136)
- 8.2. Stwórz zwinny plan (138)
- 8.3. Bądź elastyczny co do zakresu projektu (140)
- 8.4. Twój pierwszy plan (143)
- 8.5. Wykres malejący (151)
- 8.6. Zmiana projektu w projekt zwinny (155)
- 8.7. Zastosowanie w praktyce (156)
Część IV. Realizacja zwinnego projektu (165)
Rozdział 9. Zarządzanie iteracjami: działanie (167)
- 9.1. Jak dostarczać wartościowe rzeczy co tydzień (168)
- 9.2. Zwinna iteracja (169)
- 9.3. Potrzebna pomoc (170)
- 9.4. Krok 1. Analiza i projektowanie: przygotowanie do pracy (171)
- 9.5. Krok 2. Programowanie: praca (177)
- 9.6. Krok 3. Testowanie: sprawdzanie pracy (178)
- 9.7. Kanban (180)
Rozdział 10. Tworzenie zwinnego planu komunikacji (185)
- 10.1. Cztery rzeczy do zrobienia w każdej iteracji (186)
- 10.2. SPH - spotkanie planowania historii (186)
- 10.3. Pokaz (188)
- 10.4. Zaplanuj następną iterację (188)
- 10.5. Jak poprowadzić miniprzegląd (190)
- 10.6. Jak nie prowadzić codziennych podsumowań (192)
- 10.7. Wykorzystaj to, co działa (193)
Rozdział 11. Przygotowanie wizualizacji przestrzeni roboczej (197)
- 11.1. Oho... Mamy kłopoty! (198)
- 11.2. Jak stworzyć wizualizację przestrzeni roboczej (201)
- 11.3. Pokaż swoje zamiary (203)
- 11.4. Stwórz i ogłoś wspólny słownik dla danej dziedziny (204)
- 11.5. Uważaj na błędy (205)
Część V. Tworzenie zwinnego oprogramowania (209)
Rozdział 12. Testowanie jednostkowe: wiedzieć, że działa (211)
- 12.1. Witamy w Vegas! (212)
- 12.2. Wprowadź testy jednostkowe (214)
Rozdział 13. Refaktoryzacja: spłacanie długu technicznego (221)
- 13.1. Wprowadzanie dynamicznych zmian (222)
- 13.2. Dług techniczny (223)
- 13.3. Spłacanie przez refaktoryzację (225)
Rozdział 14. Programowanie oparte na testach (TDD) (233)
- 14.1. Najpierw napisz testy (234)
- 14.2. Wykorzystanie testów do opanowania złożoności (238)
Rozdział 15. Ciągła integracja: utrzymywanie gotowości produkcyjnej (243)
- 15.1. Pokaz (244)
- 15.2. Kultura gotowości produkcyjnej (246)
- 15.3. Czym jest ciągła integracja? (247)
- 15.4. Jak to działa? (248)
- 15.5. Przygotuj proces publikacji kodu (249)
- 15.6. Stwórz automatyczną kompilację (250)
- 15.7. Pracuj nad małymi fragmentami (252)
- 15.8. Co dalej? (254)
Dodatki (257)
Dodatek A. Zasady zwinności (259)
- A.1. Manifest Agile (259)
- A.2. Dwanaście zasad zwinności (260)
Dodatek B. Zasoby internetowe (261)
Dodatek C. Bibliografia (263)
272 strony, Format: 16.0x23.5cm, oprawa miękka