Trzy filary zwinnego zarządzania

Tylko firmy, które dobrze zrozumieją zasady leżące u podstaw zwinnych praktyk, mogą oczekiwać, że przyniosą im one wymierne korzyści.

Oleg prowadzi firmę dostarczającą oprogramowanie, Iwona i Piotr tworzą innowacyjny serwis internetowy, a Marcin zarządza zespołem IT w międzynarodowej korporacji. Ich sukces zależy od tego, jak dużo wartości dostarczą swoim odbiorcom oraz czy zrobią to lepiej i szybciej niż konkurencja.

Konkurencja zaś nie śpi. Pojawiają się coraz to nowe rozwiązania, a wraz z nimi przez rynek przetaczają się fale zmywające nienadążających za zmianami tradycjonalistów i wynoszące firmy, które najlepiej dopasują się do nowej sytuacji.

Przykładem takiej fali jest idea zarządzania zwanego "zwinnym" (Agile Management). Wśród metodyk realizujących założenia Agile najpopularniejsza jest metodyka Scrum. Agile i Scrum wykorzystywane są już przez większość firm zajmujących się rozwojem oprogramowania (np. Google, Microsoft czy rodzime GoldenLine, Gazeta.pl i Gadu-Gadu). Obecnie zaczynają rozprzestrzeniać się także na inne dziedziny.

Właściwe zastosowanie zwinnych metod zarządzania pozwala firmom osiągnąć niespotykane wcześniej efekty w zakresie efektywności, szybciej dotrzeć ze swoimi produktami na rynek, znacznie zwiększyć zadowolenie klientów oraz zauważalnie podnieść satysfakcję pracowników. Korzyści te potwierdzone są na przykład przez wyniki badania State of Agile Development Survey, przeprowadzanego co roku przez firmę VersionOne.

Wiele firm, przedstawiających się jako zwinne, wybiórczo jednak stosuje nowe praktyki lub odwołuje się do hasła Agile w ramach obowiązującej mody. Tylko te firmy, które dobrze zrozumieją zasady leżące u podstaw zwinnych praktyk, mogą oczekiwać, że przyniosą im one wymierne korzyści.

Zasada nr 1: Pomiar i adaptacja

Zwinne zespoły pracują w stałym rytmie: codziennych standupów i kilkutygodniowych sprintów. Plan na kolejny zawsze uwzględnia informacje uzyskane w poprzednim.

Praca wielu organizacji u schyłku XX wieku oparta była na wzorcu wywodzącym się z produkcji przemysłowej. Większość firm zbudowana była na podstawie modelu fabryki, w której nisko wykwalifikowani robotnicy skrupulatnie realizowali proces produkcji, szczegółowo zaprojektowany przez ekspertów. Sztywna hierarchia była podstawą relacji między pracownikami, a każde odstępstwo od procedury zagrażało wydajności fabryki i było surowo karane.

Model ten milcząco zakłada, że zawsze z góry wiemy, jak ma wyglądać gotowy produkt, oraz dobrze rozumiemy i kontrolujemy metody jego produkcji. Oba te założenia coraz mniej pasują do rzeczywistości współczesnych firm. Nasi klienci często sami nie umieją precyzyjnie określić swoich potrzeb, a w dodatku potrzeby te nierzadko zmieniają się w trakcie projektu. Jeśli zaś na wskroś rozumiemy technologię, w której ramach się poruszamy, to znaczy, że technologia ta już dawno przestała być szczytem naszych możliwości. Z tych powodów wiodący model organizacji musi zmienić się z przewidującego na adaptacyjny.

Dobrą ilustracją jego założeń jest sposób działania współczesnych myśliwców wojskowych, wyposażonych w system fly-by-wire. Kierujący samolotem pilot wyznacza kierunek lotu, lecz szczegóły działania silnika i sterów kontrolowane są przez komputer, który wiele razy na sekundę bada kluczowe parametry aerodynamiczne i dopasowuje reakcję samolotu, by utrzymać wyznaczony kurs. Przy naddźwiękowych prędkościach ciągła adaptacja tych parametrów jest niezbędna, by samolot nie rozpadł się w powietrzu przy najlżejszej turbulencji.

Na podobnej zasadzie działają zwinne firmy. Stałej adaptacji podlegają w nich wszystkie "parametry lotu": od bieżącej taktyki, przez cechy tworzonego produktu, po ogólne warunki pracy. Aby móc skutecznie stosować częstą adaptację, bez wprowadzania chaosu, wykorzystuje się wielokrotnie sprawdzone praktyki:

- Codzienny stand-up Zwinne zespoły spotykają się codziennie na krótkim zebraniu, podczas którego wszyscy członkowie po kolei informują pozostałych o postępach swoich prac, problemach, jakie napotkali, i planach na kolejny dzień. Takie spotkania odbywają się najczęściej na stojąco, żeby zminimalizować pokusę ich rozwlekania. Stąd ich angielska nazwa: stand-up.

Codzienne spotkania są okazją, by możliwie najwcześniej wykryć problemy, które mogą zagrozić powodzeniu całego przedsięwzięcia. Forma stand-up nadaje też pracy stały rytm i wprowadza naturalną dyscyplinę, która wynika z przejrzystości procesu oraz odpowiedzialności wobec współpracowników, a nie ze strachu przed przełożonymi.

- Inkrementalne dostarczanie produktu W zwinnych firmach produkt dostarczany jest przyrostowo, w rytmie stałych odcinków czasu zwanych "sprintami". Sprinty mają stałą długość i, w zależności od firmy, mogą trwać od dwóch do czterech tygodni. W kolejnych sprintach zespół tworzy coraz bardziej rozbudowaną wersję produktu. Każda taka wersja musi spełniać tzw. definicję gotowości (ang. Definition of Done), która określa, kiedy element produktu można z czystym sumieniem uznać za zrealizowany, bez obaw o konieczność jego poprawiania w kolejnych sprintach.

Daje to dwie ważne korzyści: po pierwsze, mamy przed oczami realną miarę postępu - gotowy produkt. Po drugie, etapowe dostarczanie produktu jest okazją dla odbiorcy do wypróbowania produktu w realnym środowisku oraz zweryfikowania swoich wyobrażeń na jego temat. Weryfikacja ta często prowadzi do zmian w dalszych wymaganiach, które znacznie podnoszą wartość produktu. Nie jest to możliwe, jeśli produkt dostarczany jest w całości dopiero na końcu projektu.

- Retrospekcje W pogoni za realizacją wymagań klientów zwinne firmy nie zapominają o kluczowym czynniku efektywności zespołu, a mianowicie o stosowanych metodach i panujących warunkach pracy. Najpilniejsze przeszkody są identyfikowane i usuwane na bieżąco, ale pod koniec każdego sprintu zespół przeprowadza retrospekcję, by bliżej przyjrzeć się swojej pracy i zidentyfikować sposoby jej ulepszenia. Ulepszenia te mogą dotyczyć metod komunikacji, praktyk technicznych, układu biurek, dostępności napojów, relacji z innymi działami firmy, specjalistycznych kompetencji pożądanych przez zespół i wszystkich innych czynników, które powodują, że zespół pracuje efektywniej.

Zasada nr 2: Współpraca z klientem

Zespoły stosujące Agile często dostarczają kolejne wersje produktu. W fazie Waterfall działający produkt pojawia się dopiero na końcu.

Bliska współpraca z klientem przez cały czas trwania projektu to podstawa sukcesu każdego przedsięwzięcia, niezależnie od tego, czy realizowane jest ono zgodnie z zasadami Agile, czy korzysta z bardziej tradycyjnych metod. Mimo powszechnej znajomości tego faktu, w rzeczywistości współpraca ta ograniczona jest często przez wewnętrzne rozgrywki polityczne lub przez zwykłe zaniedbanie.

W zwinnych zespołach duży nacisk kładzie się na zapewnienie regularnego kontaktu z klientem, którego rola nie może być ograniczona do wyliczenia długiej listy życzeń i wyobrażeń (zwanych tradycyjnie wymaganiami) na początku projektu oraz podpisania protokołu odbioru na końcu. W podejściu Scrum klient reprezentowany jest przez właściciela produktu (ang. Product Owner). Ma on za zadanie wyraźnie przedstawić cel biznesowy przyświecający pracom oraz określić, które funkcjonalności są dla niego najważniejsze.

Gdy pod koniec kolejnego sprintu zespół dostarczy następny fragment systemu, zadaniem właściciela produktu jest jego ocena pod kątem przydatności w prawdziwym środowisku. Już po kilku pierwszych sprintach właściciel produktu ma w ręku działające narzędzie, co umożliwia szybkie przeniesienie rozmów na solidny grunt praktycznych doświadczeń oraz daje klientowi poczucie bezpieczeństwa, które redukuje potrzebę napychania wymagań funkcjami "na wszelki wypadek".

Przypuśćmy, że projekt trwa sześć miesięcy. Przy zastosowaniu podejścia typu waterfall przez pół roku klient nie dostaje nic, a na końcu (zakładając, że projekt nie opóźni się) otrzymuje produkt opartyna wymaganiach sprzed sześciu miesięcy. W takich produktach duża część z mozołem stworzonych funkcjonalności może nigdy nie zostać wykorzystana.

W zwinnym projekcie wartość całego produktu podzielona jest na fragmenty, dostarczane stopniowo przez cały czas jego trwania. Najbardziej wartościowe funkcjonalności dostarczane są w pierwszej kolejności. Klient ma okazję dopasować kolejne porcje wymagań do swoich potrzeb, gdy w praktyce przekona się, że nie wszystkie jego założenia były trafne.

Słowem, zaangażowanie klienta zwiększa jego zadowolenie, ogranicza marnotrawstwo wynikające z produkcji nietrafionych funkcjonalności oraz pozwala lepiej dopasować produkt do prawdziwych potrzeb zamawiającego.

#Zasada nr 3: Praca zespołowa

Zwinne organizacje stawiają na pracę zespołową.

Stworzenie właściwych warunków dla efektywnej pracy zespołowej jest największym wyzwaniem podczas wdrożenia praktyk Agile. Kluczowe cechy zwinnych zespołów to interdyscyplinarność i samoorganizacja, zamiast specjalizacji i hierarchizacji, które to są domyślnymi zasadami dla większości tradycyjnych menedżerów.

Samoorganizacja jest warunkiem przyjęcia przez zespół wspólnej odpowiedzialności za pomyślne zrealizowanie uzgodnionych celów. Jest ona niezbędna, by każdy członek zespołu mógł w pełni wykorzystać swoje talenty, a zespół jako całość osiągnął maksymalną efektywność.

Firma zatrudniająca zespół nadal wyznacza cel jego pracy oraz ramy organizacyjne, w których może się on poruszać. Jednak w tych ramach zwinny zespół powinien mieć pełną swobodę organizacji własnej pracy. W gestii zespołu powinien zostać wybór stosowanych metod pracy, podział zadań między członków zespołu oraz sposób komunikacji między nimi, a do pewnego stopnia także dobór własnego składu.

Drugą podstawową zasadą zwinnej pracy zespołowej jest interdyscyplinarność. Członkowie zespołu muszą posiadać wszystkie kompetencje niezbędne do dostarczenia kolejnych fragmentów produktu, lecz ich role nie powinny być sztywno ustalone. Cały zespół pracuje jako spójna jednostka. Zniesione są bariery blokujące swobodny przepływ pomysłów i ograniczenia w dopasowaniu metod współpracy do aktualnej sytuacji.

Jednym z głównych zagrożeń dla samoorganizacji zespołu jest menedżer, który utożsamia swoją odpowiedzialność za realizację prac z koniecznością mikrozarządzania każdym ich aspektem. Takie podejście coraz rzadziej jest skuteczne. Po pierwsze, członkowie zespołu są często w stanie sami podejmować lepsze decyzje dzięki lepszej znajomości produktu, nad którym pracują, oraz lepszej orientacji w nowych osiągnięciach ze swojej dziedziny. Po drugie, obecność autorytarnego managera zdejmuje z członków zespołu dużą część ich własnej odpowiedzialności za realizację celu projektu, zastępując ją mniej skuteczną odpowiedzialnością za realizację poleceń PM-a. Przeszkodą mogą być też mechanizmy działające na poziomie całej organizacji, np. indywidualne premie zniechęcające do pomocy innym lub zbyt częste zmiany składu zespołów, nie dające czasu na dopracowanie i stabilizację najskuteczniejszych metod współpracy.

Michał Parkoła jest trenerem i doradcą Scrum i Agile w firmie Fluid Circle.

Zwinnym metodykom zarządzania będzie poświęcona konferencja Computerworld "Zarządzanie projektami. Agile w biznesie" (Warszawa, 19-20 czerwca br.). Szczegółowe informacje na stronie: http://konferencje.computerworld.pl/konferencje/zarzadzanie2012/zagadnienia.html