Postanowiłem zakończyć ten rok naprawdę mocnym akcentem! Kto z Was spotkał się z terminem „samoliżące się lody”? Ja również do niedawna nie miałem o nich pojęcia. Brzmi trochę jak masło maślane. Czym są te lody i jak mają się do naszej codzienności? Odpowiedź, jak zwykle, poniżej.
Samoliżące się lody
Samoliżące się lody (ang. Self-licking ice cream) to termin używany w amerykańskiej polityce. Natknąłem się na niego całkowicie przez przypadek kilka tygodni temu czytając raport Pentagonu o działaniach armii amerykańskiej w Afganistanie. Część z nich opisanych było właśnie jako samoliżące się lody. Termin nie jest nowy, bo po raz pierwszy został użyty już w 1992 roku w dokumencie opisującym biurokrację w NASA.
Mimo, że termin istnieje w publicznej świadomości już jakiś czas, na początku pomyślałem, że to żart. Skojarzenie z masłem maślanym też jest tu jak najbardziej na miejscu. Sam myślałem, że jest to amerykański odpowiednik naszego łamańca językowego. Szukając znaczenia tego zwrotu z pomocą szybko przyszła mi nieoceniona Wikipedia:
„In political jargon, a self-licking ice cream cone is a self-perpetuating system that has no purpose other than to sustain itself.”
Samoliżące się lody naprawdę istnieją. I zapewniam Was, że występują również w naszej rzeczywistości!
„Co się stanie, jeśli tego nie zrobimy?”
Pytanie „Co się stanie, jeśli tego nie zrobimy?” ostatnimi czasy jest przez nas powtarzane bardzo często. Postanowiliśmy wypowiedzieć swoistą „mini wojnę” robieniu rzeczy, które nie mają sensu. Jak się okazało, wypowiedzieliśmy ją też przeciwko samoliżącym się lodom. Tomek opowiedział o tym również podczas ostatniego Agile Warsaw, chociaż zrobił to innymi słowami.
Ale czym innym są realizowane przez nas rzeczy, które właściwie nie wiadomo po co robimy? Zasadniczo za „samoliżące się lody” uznamy wszystkie prace, które wykonujemy, żeby móc pracować. Do tej kategorii zaliczymy na przykład nasze „ulubione” raportowanie czasu pracy. Ale na tytułowe miano zasłużą także wymagania zapisane w postaci User Story, gdzie nie potrafimy uzupełnić części z uzasadnieniem („aby”).
Co się stanie, jeśli nie zrealizujemy tematu, który spokojnie możemy zakwalifikować jako samoliżące się lody? Otóż odpowiedź na to pytanie jest jak zwykle złożona. Może się okazać, że kompletnie nic. Wtedy zaoszczędzone środki w postaci czasu czy pieniędzy pozwolą na zorganizowanie na przykład ciekawej imprezy integracyjnej. Ale może zdarzyć się też, że pominięcie tej z pozoru nikomu niepotrzebnej funkcjonalności narazi nas na kary lub inne nieprzyjemności. Diabeł jak zwykle tkwi w szczegółach.
„Co jest niepotrzebne?”
Pytanie o zasadność rzeczy które robimy zdaje się nasuwać samo. Przede wszystkim, przestańmy robić rzeczy, które nie mają przełożenia na budowanie naszego produktu. Niektóre formalności są naprawdę zbędne i nikt nawet nie zauważy ich braku. O wiele gorzej ma się sytuacja z wymaganiami znajdującymi się w backlogu.
Skąd mamy wiedzieć, co jest samoliżącym się lodem, a co nie? Zespół powinien dowiedzieć się tego podczas Product Backlog Refinementu. Efektem tych działań powinny być jasno opisane wymagania z konkretnym uzasadnieniem. Jeśli nie udało się tego zrobić to współpracujemy z Product Ownerem celem zrozumienia wymagania. Nie odpuszczajmy.
I tutaj dochodzimy do sedna. Samoliżące się lody, lub jak kto woli User Story, które wykonujemy choć uzasadnienie brzmi „chcę bo chcę” to pułapka zwinnego podejścia (patrz: chciejstwo klienta). Ale wcale nie musi tak być. Za wymaganiem, które jest robione z pozoru „dla nikogo” i „po nic” może stać rzeczywista potrzeba biznesowa. Musimy tylko w umiejętny sposób do niej dotrzeć i uwidocznić ją. I tu przyda nam się pytanie „Co się stanie, jak tego nie zrobimy?”
A co, jeśli nic?
Niepotrzebne, ale obowiązkowe
Są takie wymagania, które musimy spełnić „i już”. Często wynikają one z uwarunkowań prawnych bądź np. umowy, którą podpisaliśmy czy przetargu, który wygraliśmy. W takim przypadku nie pozostaje nam nic innego, niż zrobić to, co trzeba.
Musimy sobie jednak zdawać sprawę, że nie ma nic bardziej demotywującego, jak zajmowanie się wymaganiami, z których nikt nigdy nie skorzysta. Wtedy wiemy, że robota, którą wykonujemy jest po prostu pozbawiona sensu. Jeśli opisana wyżej sytuacja jest wyjątkowa, nie musimy się mocno martwić. Jeśli jednak przygotowujemy wymagania „dla nikogo” i „po nic” to oznacza to, że nie jest ono prawidłowo rozpoznane. Albo faktycznie nie jest ono nikomu potrzebne, a my realizujemy je, bo musimy czymś zając nasze ręce. Bo gdyby zabrakło PBI-ów, to nie mielibyśmy pracy. Tworzymy więc bezsensowne wymagania oraz „US-y techniczne”, żeby mieć zajęcie.
Samoliżące się lody, mimo że brzmią śmiesznie, mogą stać się prawdziwą bolączką naszych projektów. Co z nimi zrobić? Zaprzestańmy robić zbędne rzeczy, a w przypadku wymagań – musimy o nich rozmawiać i przekonywać osoby za nie odpowiedzialne do uzasadnienia potrzeb. To się naprawdę opłaci – czy to w postaci bardziej zmotywowanego i zaangażowanego zespołu, czy w postaci zaoszczędzonych czasu i pieniędzy.