Czym jest i jakie znaczenie przy projektowaniu oraz tworzeniu projektów IT ma Backlog Refinement? Dlaczego warto wprowadzić do swojej pracy dobre praktyki i zapewnić sobie oraz klientowi komfort działania? O rozwiązaniu, które od dawna wspiera projekty realizowane we wrocławskim Capgemini opowiadają Anna Kaim i Maria Stachowiak, które już w październiku zaprezentują ten temat szczegółowo na konferencji online TechTalk Special Edition III.
Choć specjaliści branży IT mają świadomość konieczności wdrażania dobrych praktyk przy projektowaniu i tworzeniu projektów IT, to często zdarza się, że wiele narzędzi lub możliwości optymalizacji zadań umyka. Jednym z takich często pomijanych elementów, który ma w sobie olbrzymią moc porządkowania pracy, konkretyzowania działań i usprawniania wielu procesów jest Backlog Refinement.
– Już na początkowym etapie podjęcia tematu przekonałyśmy się, że Backlock Refinement nie jest zbyt popularny, bo w środowisku niewiele się o nim wspomina. To zaskakujące, bo w Capgemini jest to jedna z najcenniejszych praktyk, która pomaga nam porządkować projekty, uszczegóławiać poszczególne etapy pracy i konfrontować je z oczekiwaniami naszych klientów – mówi Anna Kaim, Project Manager w Capgemini.
Z jakimi problemami mierzą się projektanci, architekci IT, programiści, product ownerzy, czy też team liderzy? Wiele pytań bez odpowiedzi, chaos, brak uporządkowania, nieuwzględnienie funkcji wyższego rzędu, niepełna wiedza na temat realizowanego projektu, a także brak pełnego zrozumienia sensu i oczekiwań klienta – spędzają sen z powiek niejednemu pracownikowi firmy IT, który na rzecz swojego zleceniodawcy próbuje dokonać niemożliwego.
– To nie senny koszmar, a rzeczywistość wielu firm IT. Product ownerzy wspólnie z zespołami realizującymi projekty IT bardzo często pracują nad zleceniami z taką dużą liczbą niewiadomych, że już tylko cud może doprowadzić do ich finalizacji. Rzeczywistość wcale nie musi tak wyglądać. Aby uniknąć chaosu, licznych zapytań, ciągłych niepewności i niejasności warto zainwestować czas w dobre praktyki, które nie tylko usprawnią pracę nad projektem, ale także zapewnią dobre zrozumieniem potrzeb, a co za tym idzie – lepiej wpiszą się w oczekiwania klienta – mówi Maria Stachowiak, Managing Delivery Architect w Capgemini.
Stworzenie sklepu bez możliwości sortowania asortymentu lub brak koszyka – to akurat skrajności, które również mają miejsce w przypadku produktów tworzonych bez odpowiednich narzędzi i rozwiązań w stylu ‘dobre praktyki’. Rozwiązaniem wielu problemów może być wprowadzenie Backlog Refinementu.
Jeśli są nam znane ogólne zasady ‘sprintu’, to z pewnością wiemy, że po stworzeniu listy oczekiwań naszego klienta konieczne jest nadanie ważności poszczególnym funkcjonalnościom produktu, który właśnie tworzymy. Na podstawie tych priorytetów powstaje rejestr, nazywany w środowisku IT – z ang. Backlogiem. Natomiast sam Backlog Refinement jest zaś doprecyzowaniem zakresu wdrażanych elementów lub funkcjonalności do projektu. Choć nie jest to formalny proces scrumowy, to w ramach sprintu jest on rekomendowaną praktyką.
– Przystępując do projektu możemy mówić o pełnym zbiorze określonych funkcji, które produkt końcowy powinien zawierać. W chaosie powstaje wiele różnych elementów, które należy spriorytetyzować, dookreślić w czasie, ustalić ich kolejność i inne niezbędne charakterystyki, które pozwolą na nadanie pełnej funkcjonalności projektowi. To właśnie możemy nazwać Backlog Refinementem – tworzeniem uporządkowanej przestrzeni, która odpowie na pytania: co mamy zrobić teraz w najbliższym sprincie, bo inaczej nie ruszymy dalej, a co będzie nam potrzebne dopiero w przyszłości i może zostać zaimplementowane później? – tłumaczy Anna Kaim.
– Warto mieć na uwadze, że Backlog Refinement to nie kolejne „zbędne” spotkanie, a proces mający na celu przede wszystkim zadbanie o dokładne zdefiniowanie i wyartykułowanie wszelkich potrzeb na rzecz projektu z perspektywy zarówno biznesu, klienta, jak i zespołu projektującego. Co istotne Backlog Refinement określa także priorytet powstania poszczególnych funkcjonalności, by nie powstał nam na przykład sklep z wieloma możliwościami segregowania, wyszukiwania asortymentu, któremu brakuje koszyka – dodaje Maria Stachowiak, od 14 lat związana z Capgemini Polska.
Korzyści, które niesie ze sobą wprowadzenie do pracy praktyki Backlog Refinementu, jest wiele. Należy rozpatrzyć je z perspektywy wykonawcy projektu – firmy i pracowników oraz z punktu widzenia klienta i jego biznesu.
– Kiedy spojrzymy na czas, który należy zainwestować w Backlog Refinement, czyli ok. 5-10 proc., to można odnieść wrażenie, że jest duży wycinek całego projektu. Jednak trzeba tutaj zaznaczyć, że ROTI (ang. Return on Time Invested, czyli Zwrot z Zainwestowanego Czasu) jest w tym przypadku na wysokim poziomie, co oznacza, że warto poświęcić ten czas, bo jest to opłacalne w dalszej perspektywie prac. Dlaczego? Przede wszystkim podnosi się efektywność wykonywanych działań, bo pracownicy mają jasno wytyczone cele, które w pełni rozumieją. Następuje także zachowanie ciągłości sprintu, co przekłada się na skrócenie czasu pracy nad projektem – wyjaśnia Anna Kaim, związana z branżą IT od ponad 12 lat.
– Spotkania w ramach Backlog Refinement odbywają się cyklicznie przez cały cykl pracy nad danym produktem. Częstotliwość jest uzależniona od charakterystyki i potrzeb klienta oraz od efektywności działań zespołu programistycznego. Na te spotkania konieczne jest wcześniejsze przygotowanie merytoryczne, które uzyskuje się poprzez dokładną analizę kodu oraz już istniejących w systemie funkcjonalności – mówi Maria Stachowiak.
(RED)