Blog - Code Sprinters - Agile Experts

Jak się przygotować do Refinementu? 

Czym jest Refinement? Backlog Refinement (zwany także Pielęgnacją Backlogu lub coraz rzadziej groomingiem) jest pracą wykonywaną nad Backlogiem Produktu. W jej efekcie Backlog z każdą iteracją zawiera coraz lepiej przygotowane elementy (wymagania, historyjki itd.), które są zdekomponowane i wyszacowane, ze zidentyfikowanymi zależnościami, a także wspólnie zrozumiane na odpowiednim poziomie (im wyższa pozycja elementu na Backlogu, […]

Kto może przyjść na Daily Scrum? 

Kto może przyjść na Daily Scrum?

Chociaż Scrum Guide definiuje obecność na Daily Scrum w ten sposób: „The Daily Scrum is an internal meeting for the Development Team. If others are present, the Scrum Master ensures that they do not disrupt the meeting”, to praktyka różnych firm jest powodem do powstawania wielu pytań. Kim są owi „others”, czy Scrum Master pojawia […]

Co wybrać: liche Definition of Done czy brak możliwości ukończenia czegokolwiek? 

DoD Scrum - Definition of Done

Jeden z poprzednich artykułów poświęcony był konceptowi Definicji Ukończenia, który w Scrumie służy zapewnieniu przejrzystości odnośnie tego co to znaczy, że prace nad produktem zostały zakończone, a sam produkt nadaje się do użycia. Zazwyczaj zespół, kierując się standardami obowiązującymi w organizacji oraz własną wiedzą i umiejętnościami, ustanawia Definition of Done takie, które rzeczywiście zapewnia, że […]

O dekompozycji wymagań 

Dekompozycja wymagań. Jak dekomponować wymagania w Scrumie

Wyobraźmy sobie, że trwa spotkanie, na którym Product Owner wraz z zespołem dyskutuje o wymaganiach w backlogu produktu. Niektóre z nich są tak duże, że żadną miarą nie mieszczą się w sprincie i konieczna jest ich dekompozycja na kilka mniejszych. Uczestnicy dyskusji naprężają neurony z całych sił, ale brak pomysłu na to jak sensownie owe […]

Jaka powinna być długość sprintu? 

długość sprintu - Scrum

W definicji Scruma maksymalna długość sprintu określona jest na jeden miesiąc – pojawia się tam nawet stwierdzenie, że to miesiąc „kalendarzowy” (są jakieś inne?). Minimum nie jest określone, co oznacza, że całkowicie poprawnymi będą sprinty dziewięciodniowe, trzydniowe lub… kilkugodzinne. Tak długo, jak przekroczony nie zostanie limit miesiąca, działamy zgodnie z definicją metody. Obalamy mity dotyczące […]

Definition of Done a kryteria akceptacyjne 

Definition of Done w Scrumie

Jednym z kluczowych konceptów w Scrumie jest Definition of Done, czyli po polsku Definicja Ukończenia lub Kryterium Ukończenia. W założeniu koncept trywialny, a jednak bardzo często źle rozumiany i mylony z kryteriami akceptacyjnymi wymagań. Po ludzku: co to jest Definition of Done? Jeśli wytwarzamy samochody, to Definition of Done będzie określało warunki jakie spełnić ma […]

Osiem niepożądanych postaw Scrum Mastera, część 2 

Scrum Master postawy

W poprzedniej części opisałem kilka dysfunkcyjnych postaw Scrum Mastera, począwszy od kierownika, poprzez sekretarza, obrońcę zespołu, do super-bohatera. Dziś kontynuujemy wyliczankę. Dla niektórych niedoświadczonych osób właściwym wyborem dla Scrum Mastera wydaje się działanie jako… Pocieszyciel zgnębionych Bycie pluszową maskotką, takim bratem-łatą dla zespołu, który pogłaszcze, przytuli i pocieszy, dla części osób jest podstawowym obowiązkiem Scrum […]

Osiem niepożądanych postaw Scrum Mastera, część 1 

niepożądane postawy Scrum Mastera

Dużo się mówi na temat zachowania i postaw Scrum Mastera, które pozytywnie wpływają na zespół, Product Ownera i organizację dokoła. Zaczynając pracę w tym zawodzie, czy to na kursach i szkoleniach, czy od bardziej doświadczonych kolegów, uczymy się o byciu coachem, nauczycielem, doradcą czy mentorem dla współpracowników. Po czym wcielamy te rady i zalecenia w […]

Czy „zwinna organizacja” oznacza Scrum w każdym dziale? 

Scrum w całej organizacji

Transformacja Agile Powszechne zainteresowanie metodami z rodziny Agile 17 lat po publikacji Manifestu Agile i po ponad 20 latach wyraźnej obecności tych praktyk (Scruma, Kanbana, XP i in.) w naszej branży, nikogo nie powinno dziwić. Jednak wiele organizacji, które spotykam na swojej zawodowej ścieżce, dopiero rozpoczyna „zwinną transformację” – czyli próbuje agile’owe podejście uczynić standardem […]

Czy w Agile faza UAT ma sens? 

UAT testy

Kiedyś wytwarzanie oprogramowania zaczynało się od zebrania „wszystkich wymagań” i ich dokładnej analizy. W oparciu o to powstawała specyfikacja produktu, który należy zbudować. W przekonaniu wielu zawierała ona odpowiedź na każde pytanie, jakie wytwórcy produktu będą w przyszłości zadawać. Następnie biznes krwią podpisywał się pod tymi dokumentami, gwarantując, że zdania nie zmieni (prawda, że nie […]

Kiedy wybrać Scrum, a kiedy Kanban? 

Scrum czy Kanban

Wszystkie metody, praktyki i techniki należące do rodziny Agile opierają się o te same pryncypia: mechanizm empiryczny, Manifest Agile oraz 12 Zasad Zwinnego Tworzenia Oprogramowania. Najważniejszym jest tu istnienie mechanizmu empirycznego – wszystko, co zostało w 2001 roku zawarte w Manifeście i Zasadach wywodzi się właśnie z niego (a wiele metod bazujących na empiryzmie, jak […]

Centrum sterowania wszechświatem 

wytwarzanie oprogramowania

Wytwarzanie oprogramowania jest nieustannym zmaganiem się ze złożonością: zmienia się technologia, potykamy się o dług techniczny pozostawiony we wcześniej wytworzonym kodzie, ludzie mają gorszy lub lepszy dzień, różne umiejętności, zdarza im się niespodziewanie odejść z pracy. O ile z tym można sobie jeszcze jakoś radzić, o tyle nie sposób uniknąć ani przewidzieć ciągłej ewolucji potrzeb, […]

13 powodów nieudanej automatyzacji testów, część 3 

automatyzacja testów

Dwa wcześniejsze artykuły (część pierwsza i część druga) opisywały rafy, na jakie można natrafić, rozpoczynając automatyzację testów, oraz co można zrobić, by tak się nie stało. Na koniec przyjrzyjmy się na ile organizacja, w której działa zespół zajmujący się rozwojem produktu, może wpłynąć (pozytywnie lub negatywnie) na możliwości automatyzacji testów. 11. Nie mamy czasu na […]

13 powodów nieudanej automatyzacji testów, część 2 

testy automatyczne

W poprzedniej części wymienione zostały różne powody, dla których zespoły developerskie nie zajmują się automatyzacją testów i nie biorą za to odpowiedzialności jako team. A przecież takie rozwiązanie jest jedynym sensownym: ludzie, którzy budują produkt, powinni zapewnić, że on działa, czyli przetestować go. Niestety z faktu, że developerzy będą tego świadomi wcale nie wynika, że […]

13 powodów nieudanej automatyzacji testów, część 1 

testowanie

Presja na częste wydawanie nowych wersji produktów powoduje, że wykładniczo rośnie ilość testów niezbędnych do stwierdzenia, czy zmiany w najnowszym wydaniu nie psują wcześniej wytworzonych funkcjonalności. Testowanie nie oznacza bowiem jedynie sprawdzenia, że nowe rzeczy działają jak powinny, ale też zweryfikowania, czy produkt jako całość wciąż nadaje się do użytku. W miarę rozwoju produktu przybywa […]

Eksperymenty i porażki 

celebration grid management 3.0

Eksperymenty i porażki W ciągu swojej kariery w latach 1984-2003 koszykarz Michael Jordan przegrał (jak sam twierdzi) 300 spotkań, a 9000 razy oddał niecelny rzut, w tym 26 razy gdy od tego właśnie zależało zwycięstwo. Statystyka robi wrażenie, szczególnie gdy wiadomo, że chodzi o sportowca światowego formatu, legendę parkietu, powszechnie rozpoznawaną i kojarzoną z koszykówką przez […]