Podręcznik. — Lublin: Politechnika Lubelska, 2011. — 214 s. — (Współczesne Technologie Informatyczne). — ISBN 978-83-62596-61-4.
Zwinność w procesach wytwarzania oprogramowania związana jest z chęcią zmiany podejścia do procesu wytwórczego, odrzuceniem pewnych elementów formalizmu metodyk tradycyjnych oraz wykorzystaniu najlepszych praktyk pracy zespołowej, zwiększających jego efektywność i jakość rezultatu. Dynamizuje ona proces wytwarzania oprogramowania, wykorzystuje efekt synergii wynikający ze ścisłej współpracy z klientem w trakcie całego projektu, umożliwia dynamiczne sterowanie przyrostowym wytwarzaniem oprogramowania przy pomocy zmieniających się wymagań klienta.
Podejście zwinne zaowocowało takimi metodykami realizacji przedsięwzięć informatycznych jak programowanie ekstremalne, Scrum czy FDD. Zmieniło także podejście do procesów szacowania, planowania i kontroli realizacji przedsięwzięcia.
Jakość oprogramowania jest jednym z fundamentów podejścia zwinnego. Specjalne techniki tworzenia kodu, wielopoziomowe testowanie oraz standaryzacja rozwiązań to tylko niektóre techniki jej osiągnięcia. Zaangażowanie zdopingowanego zespołu, poczucie własności i równocześnie współdzielenie kodu jest dodatkowym czynnikiem wzrostu jego jakości, w tym i podatności na modyfikacje.
Standaryzacja rozwiązań, pozwalająca nie odkrywać ponownie „koła” i stosować sprawdzone elementy oprogramowania, zaowocowała zdefiniowaniem (częściej zwykłą klasyfikacja i opisem) wzorcowych konstrukcji, zwanych wzorcami projektowymi. Ich stosowanie rewolucjonizuje podejście do konstruowania architektury oprogramowania i upraszcza komunikacje w zespole programistów.
Wielokrotne poprawianie kodu programu jest jedną ze specyficznych cech podejścia zwinnego. W wyniku takich operacji w kodzie mogą pojawić się „brzydkie zapachy”, czyli błędy lub tylko miejsca, w których te błędy mogą się potencjalnie pojawić. By je usunąć powstała metoda refaktoryzacji, która częściowo automatyzowana pozwala poprawiać jakość kodu równolegle z jego rozwojem, realizowanym iteracyjnie.
Książka prezentuje metody zwinne wytwarzania oprogramowania. Nie jest to jednak pełnia wiedzy w tym temacie. Z jednej strony bowiem, ograniczona objętość nie pozwoliła zawrzeć wielu elementów zwinności (głównie przykładów zastosowań), a z drugiej — jest to dość szybko zmienna dziedzina informatyki. Czytelnik posiądzie wiedzę o istocie i podstawach technik zwinnych, co pozwoli mu na jej dalsze samodzielne zgłębianie, teoretyczne i praktyczne.
Wstęp.
Wybrane metodyki zwinne w projektach informatycznych.Projekty informatyczne i tradycyjne metodyki zarządzania.
Manifest zwinności i metodyki zwinne wytwarzania oprogramowania.
Programowanie ekstremalne i jego praktyki.
Scrum w wytwarzaniu oprogramowania.
Metodyka FDD.
Wdrażanie praktyk zwinnych.
Pytania kontrolne.
Szacowanie projektów w metodykach zwinnych.Miejsce szacowania w cyku życia projektu.
Metryki estymacji wielkości elementów projektu.
Techniki planowania wydań i iteracji.
Specyficzne metody szacowania projektów zwinnych.
Modyfikowanie oszacowań.
Pytania kontrolne.
Zarządzanie jakością w procesie wytwarzania oprogramowania.Ogólne zagadnienia zarządzania jakością.
Certyfikacja i modele jakości.
Testowanie i inne metody dbania o jakość.
Narzędzia wspomagające zarządzanie jakością.
Pytania kontrolne.
Wzorce projektowe w metodykach zwinnych.Projektowanie w metodykach zwinnych.
Definicja wzorca projektowego.
Klasyfikacja wzorców projektowych.
Wybrane wzorce projektowe GoF.
Wzorce MVC i MVP.
Wybrane wzorce projektowe w zarządzaniu zasobami.
Pytania kontrolne.
Refaktoryzacja kodu i inne techniki polepszania jego jakości.Jakość kodu a zasady refaktoryzacji.
Brzydkie zapachy w kodzie, czyli typowe błędy.
Metody refaktoryzacji.
Narzędzia refaktoryzacji.
Pytania kontrolne.
Literatura.
Indeks.