Być jak jaszczurka

Zwinność jako organizacja i jej kultura

Zwinna organizacja jest zdolna do podjęcia wyzwania zdefiniowanego w sposób niepełny lub nieprecyzyjny. Organizacja z silną kulturą oparcia o metodyki (np. RUP) albo kaskadowe procesy rozwoju oprogramowania musi więc znaleźć śmiałość, by odejść od metodologicznej ortodoksji i przedłożyć wartość dla klienta ponad zgodność ze standardami.

Podstawowym paradygmatem "zwinnego" rozwoju jest integrowanie gotowego produktu możliwie często - najlepiej codziennie, a najrzadziej raz na kilka tygodni. W realiach działu informatyki dużej firmy albo przedsiębiorstwa świadczącego usługi informatyczne, "produkt" to nie tylko funkcjonalność, ale i całe wsparcie: przeszkolony personel, dokumentacja, środowisko testowe, infrastruktura (podstawowa i awaryjna, a często także testowa), itd.

"Zwinny rozwój" w tym ujęciu to nie tylko pisanie kodu aplikacji, ale przygotowanie wszystkich elementów rozwiązania w taki sposób, aby całość była gotowa do wykorzystania przez użytkownika docelowego. Nawet jeśli nie będzie od początku idealne i nawet jeśli jego utrzymanie będzie wymagało dodatkowego nakładu pracy, może się okazać, że korzyści biznesowe osiągane tu i teraz w pełni uzasadniają ponoszenie dodatkowego kosztu.

Zwinna organizacja posiada także rezerwy, które pozwalają jej skrócić działania. Najlepszym przykładem może być znowu zakup serwerów. Jeśli rozwijana aplikacja potrzebuje nowej infrastruktury internetowej (klastra serwerowego, łącz, platform middleware), realizacja zakupu i instalacji według specyfikacji przy najlepszych nawet kontraktach trwa kilka tygodni. Jedynym sposobem na przyspieszenie tego terminu (np. posadowienie aplikacji na serwerze w drugim tygodniu po rozpoczęciu pracy) jest posiadanie "w zapasie" miejsca, gdzie zadaną aplikację dałoby się umieścić. Posiadanie takich czy innych zapasów to zawsze koszt, gotówka "zamrożona" w technologicznych klockach, które może się przydadzą, a może nie. Zwinna organizacja to więc również także zdolność utrzymania i uzasadnienia takich rezerw. Każdy audyt, który znajdzie serwer (lub inny produkt informatyczny) zakupiony "na wszelki wypadek" zacznie podejrzewać nieekonomiczne działanie albo wręcz nadużycie.

Warunkiem koniecznym "zwinnego podejścia" jest zdolność komunikacji pomiędzy biznesem a informatyką oraz wzajemne zaufanie. Czy to XP, czy to Scrum, czy inne podejścia agile, zakładają ścisłą interakcję pomiędzy odbiorcą biznesowym a zespołem, który buduje rozwiązanie. Bez elementarnego zaufania, zdolności kompromisu i wspólnoty celów, bez atmosfery współpracy nie jest możliwe inkrementalne tworzenie wartości. Użytkownik biznesowy musi wierzyć, że zespół wykonuje swoją pracę najlepiej jak potrafi, zaś informatycy - że cechy, których ich odbiorca potrzebuje, rzeczywiście będą wykorzystane. Błędy każdej ze stron powinny spotykać się z wyrozumiałością, a nie z pretensjami i obwinianiem.

Zwinne rozwiązania nie są możliwe bez kultury pozwalającej na podejmowanie ryzyka bez obawy o konsekwencje takie jak złamanie kariery czy utrata środków i wpływów. Nie każde zagadnienie, które organizacja podejmuje w podejściu agile kończy się sukcesem, nie każde także przynosi zapowiadane efekty. Tam, gdzie nie ma miejsca na podjęcie ryzyka w dobrej wierze, tam nie ma też zwinności - jest biurokracja, skostniałe struktury i rutyna.

Myśleć całościowo

Nie sposób dzisiaj ignorować zwinnych metod. Wzbierająca fala krytyki pod adresem tradycyjnych modeli oraz coraz więcej udanych projektów, które przechodzą przez tę ścieżkę, sprawia, że przedsiębiorstwa coraz uważniej przyglądają się "agile" jako uzupełnieniu, albo nawet alternatywnym podejściu dla tradycyjnych metod. Dobrze, aby zdawały sobie sprawę, że zwinność to nie tylko stosowanie tej czy innej metody jak XP, Scrum czy APM, ale także gotowość organizacji do jej zaadaptowania.


TOP 200