Agile. Szansa na skokowy wzrost produktywności - ebook
Agile. Szansa na skokowy wzrost produktywności - ebook
Książka jest syntetycznym opracowaniem na temat coraz bardziej popularnej metodologii wdrożeń systemów informatycznych - Agile, pozwalającym znaleźć odpowiedź na pytanie: kiedy i w jakim celu zdecydować się właśnie na nią, a nie na klasyczną metodykę. Książka zawiera szczegółowe porady i praktyczne przykłady. Taka pozycja to dla Czytelników namiastka wieloletniego doświadczenia i streszczenie pogłębionej, niedostępnej gdzie indziej wiedzy z dziedziny IT, organizacji i inżynierii oprogramowania. Jest to również świetne uzupełnienie i pogłębienie szkoleń z obszaru Agile.
Spis treści
Wstęp
Metody zwinne – wprowadzenie
1.1. Metoda prób i błędów – lekarstwo na niepewność
1.2. Najważniejsze fakty z historii metod iteracyjnych i przyrostowych
1.3. Dalszy rozwój metod zwinnych – post-agilism
1.4. Przegląd metod zwinnych
1.5. Metametoda – wybór procesu
1.6. Unikanie szkodliwych nieporozumień na temat Agile
1.7. Agile w kaskadowym świecie
2. Od potrzeby biznesowej do zaspokojenia – zwinna realizacja
2.1. Etapy życia produktu: projekt, wdrożenie, utrzymanie
2.2. Czy klienci potrzebują dobrych produktów?
2.3. Brak kosztów jakości projektów i jakości produktów
2.3. Modele cyklu życia oprogramowania
2.4. Ciągła integracja i częste dostawy
3. Zwinna inżynieria wymagań
3.1. Cele określania wymagań
3.2. Techniki pozyskiwania wymagań
3.3. Paradoksy wymagań i model Kano
3.4. Współpraca z marketingiem
3.5. Opisywanie wymagań
3.6. Rodzaje wymagań – atrybuty jakości
3.7. Zasady podziału wymagań w Scrumie
3.8. Korzyści i koszty zapisywania
3.9. Opisywanie wymagań w języku naturalnym
3.10. Opowieści użytkowników
3.11. Modelowanie wymagań
3.12. Zatwierdzanie wymagań
3.13. Weryfikacja, walidacja, negocjowanie i konsolidacja wymagań w Agile
3.14. Interesariusze, kontekst, granica kontekstu i negocjacje w metodach zwinnych
3.15. Zwinne przeglądy
3.16. Weryfikacja modeli
3.17. Zarządzanie śliskimi wymaganiami
3.18. Wersjonowanie
3.19. Śledzenie powiązań wymagań
4. Planowanie i nadzorowanie w Agile Scrum
4.1. Zasady dobrego planowania pracy
4.2. Przegląd sposobów szacowania pracochłonności
4.3. Szacowanie algorytmiczne lub na podstawie doświadczenia
4.4. Planowanie w Agile: pracochłonność, wydajność zespołu, ryzyko
4.5. Dług techniczny
4.6. Diagram wypalenia i jego wykorzystanie
5. Testowanie w Agile
5.1. Testowanie jako jedna z form zapewnienia jakości w Agile
5.2. Cele, rodzaje i poziomy testów według kwadrantów testowych Agile
5.3. Testy czarnej skrzynki i testy dogłębne
5.4. Testy właściwości (pozafunkcjonalne) w Agile
5.5. Szkoła kontekstowa i testowanie eksploracyjne w Agile
5.6. Testowanie eksploracyjne w Agile
5.7. Podstawy automatyzacji testów w projektach Agile
5.8. Automatyzacja przygotowania testów w Agile
5.9. Znaczenie automatycznych testów w modelu iteracyjnym
5.10. Wpływ Agile na automatyzację testów
5.11. Testowanie na podstawie modeli
5.12. Projektowanie testów
5.13. Sposoby projektowania testów
5.14. Agile a tradycyjne trudności testowania
5.15. Obsługa wykrytych błędów
5.16. Testy jednostkowe
5.17. Metodyka TDD
5.18. Testy akceptacyjne a kryteria ukończenia – ATDD
6. Jak być Agile i przetrwać w zespole
6.1. Społeczne i psychologiczne aspekty pracy zwinnej
6.2. Znaczenie rytuałów i terminologii Agile
6.3. Zwinny programista i jego rola w zespole Agile
6.4. Metody treningu – jak stać się zwinnym?
6.5. Certyfikacje
6.6. Wady i zalety certyfikatów
6.7. Wybór certyfikacji
6.8. Agile po pięćdziesiątce
6.9. Agile a kariera
7. Słownik terminów
8. Źródła
Kategoria: | Poradniki |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-269-3449-0 |
Rozmiar pliku: | 10 MB |
FRAGMENT KSIĄŻKI
Moda na Agile trwa, a wręcz się nasila. Z jednej strony to wspaniale, gdyż Agile jest rodziną bardzo skutecznych sposobów tworzenia oprogramowania. Z drugiej strony – wielka szkoda, że Agile stało się modą. Przez to bowiem bywa propagowane i stosowane bezmyślnie, a nawet gloryfikowane jako niemal uniwersalne rozwiązanie, jako cel sam w sobie. Tymczasem celem powinna być wyłącznie skuteczność i sprawność przedsięwzięć IT, a jednym z narzędzi pomagających w jego osiągnięciu może być Agile.
Aby dobrze zrozumieć i skutecznie stosować Agile, nie wystarczy szczegółowa znajomość instrukcji praktykowania jednej ze zwinnych metodyk (najczęściej Scrum). Tym bardziej że zwykle wybór metodyki jest przypadkowy. Zamiast analizy organizacje kierują się modą i obiegowymi opiniami.
W wielu publikacjach na temat Agile jako coś oczywistego przyjmuje się wyższość omawianych metodyk nad alternatywnymi. Wyraża się to nawet w terminologii, w której metody inne niż Agile określa się zwykle pobłażliwą nazwą „tradycyjnych”. Taki sposób prezentacji, pozornie skuteczny i pragmatyczny, nie pozwala naprawdę dogłębnie zrozumieć omawianego tematu. Cierpi na tym efektywność i elastyczność osób mających tylko taką wąską wiedzę. Nie chodzi bowiem o to, żeby być zwinnym, choć nazwa brzmi kusząco, lecz żeby być skutecznym. Dlatego nie spisujmy lekkomyślnie na straty projektów sekwencyjnych i hierarchicznych. Dobry menedżer dopasowuje taktykę do potrzeb, a nie na siłę stosuje rzekomo uniwersalne rozwiązanie niezależnie od sytuacji.
Nie krytykuję opracowań, które koncentrują się na opisie szczegółów i taktyki zwinnego działania. Są one jak najbardziej potrzebne, a liczne takie książki są już na naszym rynku dostępne. Brakuje natomiast opracowania syntetycznego, pozwalającego znaleźć odpowiedź na pytanie, kiedy i po co wybrać strategię Agile. Wprawdzie od autorów książek trzeba wymagać szerszej wiedzy niż tylko wziętej z praktycznego doświadczenia. Z drugiej strony nie ma raczej sensu, aby od każdego uczestnika projektu Agile, nawet na kierowniczym stanowisku, wymagać zarówno wielkiego doświadczenia, jak i przygotowania teoretycznego. Byłoby to marnotrawstwem czasu. Optymalnym rozwiązaniem jest książka, która z jednej strony zawiera szczegółowe przepisy i praktyczne przykłady, a jednocześnie oferuje szersze spojrzenie. Taka pozycja to dla Czytelników dobra namiastka wieloletniego doświadczenia i streszczenie pogłębionej, niedostępnej gdzie indziej wiedzy z dziedziny IT, organizacji, inżynierii oprogramowania. A nawet psychologii, która jest potrzebna, aby umiejętnie stosować Agile.
Taką optykę przyjmuję w tej książce. Po pierwsze, staram się zachować bezstronność, opisywać równie dokładnie zalety i możliwości, jak i wady lub zagrożenia stosowania metodyk zwinnych. Nie zaczynam od wyjaśniania niezrozumiałych dla niewtajemniczonych nazw artefaktów i rytuałów Agile. Jako punkt wyjścia przyjmuję konkretną potrzebę biznesową lub technologiczną, którą będzie się przy ich pomocy realizować. Słowem, traktuję Agile tak, jak narzędzie – jedno z wielu – do osiągnięcia konkretnych celów, a nie jako wartość, która nie podlega dyskusji. Skorzystają na tym i Czytelnicy, i sama Agile, ponieważ taka formuła chroni nas przed karkołomnymi próbami stosowania tej metodyki tam, gdzie nie daje ona korzyści.
Książka pozwoli Czytelnikom w pełni zrozumieć, oswoić i wykorzystać Agile w najlepszy możliwy sposób. Tłumaczy i pokazuje na przykładach, jak można Agile zastosować do rozwiązywania prawdziwych problemów i realizowania konkretnych potrzeb projektów IT. Zalecamy ją zarówno menedżerom, jak i informatykom, którzy dopiero planują wejść w świat Agile, aby mogli szybko zrozumieć, o co w tym wszystkim chodzi i dlaczego ta metoda ma naprawdę szansę być bardzo skutecznym sposobem współpracy.
Jest to pozycja interesująca również dla tych, którzy poznali już Agile w praktyce i chcą podnieść swoje kwalifikacje, pracować skuteczniej, ze zrozumieniem. Zrozumienie jest kluczowe do tego, aby umieć wyjść poza wąskie przykłady, przepisy książki kucharskiej i umieć na sposób Agile stawiać czoło coraz to nowym wyzwaniom, realizować coraz to nowe cele biznesowe.