O metodyce Agile mogliście już przeczytać w naszych poprzednich wpisach. W części I rozprawialiśmy na temat specyfiki tego podejścia. Przedstawiliśmy też przykłady zastosowania tej metody. W części II omówiliśmy cztery praktyczne metody testowania w Agile i ich najlepsze praktyki.

W tym wpisie zastanowimy się nad przyszłością Agile. Czy zwinne metody w ogóle ją mają? Czy mają jakieś wady? A może są chwilowym kaprysem, nieznaczącym trendem w metodykach pracy? Przekonajmy się!

Według Jasona Bloomberga

W swoim artykule dla magazynu Forbes, Jason Bloomberg zauważył, że pomimo typowego dla nowych technologii cyklu odświeżania co trzy lata, Agile wciąż utrzymuje się w gronie dominujących metod stosowanych przy wytwarzaniu oprogramowania. Autor podaje listę głównych problemów, które pojawiły się przez lata stosowania zwinnego podejścia:

  • Brak skupienia na architekturze oprogramowania
  • Nacisk na jednorazowe projekty programistyczne, zamiast tworzenia kodów wielokrotnego użytku
  • Umieszczanie zespołu programistycznego jako samodzielnej grupy w „opozycji” do reszty pracowników w firmie
  • Agile zachęca do tworzenia samoorganizujących się zespołów, nie zapewniając jednocześnie jasnych wytycznych, jaki sposób samoorganizacji będzie najlepszy
  • Agile nakłania interesariuszy i klientów do aktywnego współuczestniczenia w zespole – ale interesariusze czy klienci zwykle wzbraniają się przed taką rolą, a jeśli dołączają do zespołu, to borykają się ze swoją funkcją
ręce stół zespół laptop
Inne wady zwinnej metodyki
Manifest Agile

Manifest na rzecz Agile Software Development pierwotnie dotyczył rozwoju oprogramowania i nie obejmował innych obszarów działalności. Jak pewnie część z was wie, duży projekt biznesowy nie rozpoczyna się i nie kończy tylko na rozwoju oprogramowania. Metodyka Agile została stworzona i dopracowana na potrzeby tworzenia oprogramowania. Część jej pomysłodawców wciąż pracuje nad udoskonaleniem zwinnego podejścia. Jednak część z nich odeszła od oryginalnych założeń Manifestu, szukając nowych, lepszych sposobów tworzenia oprogramowania.

Śmierć przez popularność

Wzrost popularności metodyki Agile paradoksalnie może przyczynić się do zmniejszenia reprezentowanej przez nią jakości i do osłabienia wartości tego podejścia. Nadużywane sformułowanie traci na sile. Z Agile spotykamy się przy elastycznej pracy pod względem czasu i lokalizacji czy przy stosowaniu w firmie tzw. hotdeskingu (pracownicy nie mają ściśle określonych stanowisk pracy; przychodząc do firmy, zajmują wolne miejsca). Określanie takich rozwiązań „zwinnymi” tudzież „elastycznymi” nie jest błędne, ale wprowadza zamęt znaczeniowy, gdy w pracy, przy którymś z projektów wykorzystuje się faktycznie podejście Agile. Popularność słowa i to, że łatwo można je przypisać do jakieś metody, techniki, sposobu czy podejścia, tylko zwiększa zamieszanie.

Ponad Agile

DevOps to jeden z kierunków często wskazywany, gdy mówi się o zastąpieniu Agile. To zabezpieczenie przyszłości rozwoju oprogramowania na dużą skalę. Skala właśnie jest jedną z kluczowych elementów krytyki zwinnych metod. To, co dobrze się sprawdza przy tworzeniu małej aplikacji, niekoniecznie musi być skalowalne do programu dla całej firmy.

laptop ręce pisanie biurko
Co dalej?

Z uwagi na niedociągnięcia metodyki zwinnej można pokusić się o powrót do np. metod kaskadowych. Zamiast tego wiele zespołów kieruje się ku Lean, która to metodyka skupiona jest na eliminowaniu wszelkich działań, które nie dodają wartości do projektu od razu, podkreślając jednocześnie, że zespół działa jako całość.

Martin Fowler zauważa, że od samego początku istniało powiązanie między podejściem Lean a Agile, ponieważ wielu twórców różnych zwinnych metod miało wpływ na metodykę Lean.

Inni wskazują na podejście DevOps jako to, które zastąpić ma w przyszłości Agile. DevOps jest „zwinny na sterydach” – jak określają, ponieważ redukuje czas realizacji Agile z tygodni do celu „ciągłej dostawy”. Według J. Bloomberga DevOps mimo bliskiego związku z Agile nie jest jego częścią i nie zastępuje go całkowicie. Ciągłe dostarczanie cechuje bardziej podejście Lean niż zwinne.

Justin Arbuckle z Chef Software sugeruje, że kolejnym krokiem będzie połączenie zasad Agile, Lean i DevOps. „Widzimy, że ich praktyki stają się tak powiązane w rzeczywistości, że łączą się w poszukiwaniu pojedynczego wyniku”. Jednak zintegrowanie tych podejść będzie wymagało sporej pracy.

J. Bloomberg twierdzi, że decyzja, by nie wdrażać zwinnego zestawu praktyk, staje się coraz bardziej ryzykowna w dzisiejszym dynamicznym świecie. Niewykonanie takiego ruchu jest groźniejsze niż żonglowanie między metodami Agile, Lean i DevOps. „Jedno jest pewne” – podsumowuje – „jesteśmy na wyboistej drodze”.

 

Najważniejsze w stosowaniu metodyk czy to Agile, czy Lean, czy innych jest to, by wszyscy wiedzieli, co się dzieje, współpracowali ze sobą i byli bardziej postępowi niż dogmatyczni w stosunku do metodologii.

Wiele osób uważa, że podejście Agile lepsze jest od metody kaskadowej, ale nie jest to rozwiązanie ostateczne i jedyne słuszne. Za jakiś czas przyjdzie kolejna fala metodologii tworzenia oprogramowania, która będzie odpowiadała na nowe potrzeby firm, które dzięki rozwojowi technologii i zmieniającym się potrzebom zarówno pracowników, jak i klientów, będą reprezentowały coraz większą elastyczność.

18
  •  
    5
    Shares
  • 5
  •  
  •  
  •