Co to jest Scrum?

Scrum to jeden ze sposobów podejścia do realizacji złożonych projektów. Wywodzi się z nurtu Agile, czyli zwinności w wytwarzaniu oprogramowania.  Na początku XXI w. przedstawiciele szkoły lekkich metodyk, w tym twórcy Scrum – Ken Schwaber i Jeff Sutherland – podpisali tzw.  Manifest Agile. Ustalili oni wtedy wspólnie wyznawane wartości.

Scrum nie jest metodyką, a jedynie tzw. frameworkiem, czyli ramą strukturalną, w której organizuje się pracę. Wspomniana rama wyznaczana jest poprzez zestaw praktyk, zasad oraz wartości, mających swoje korzenie w Lean Thinking.

scrum
Zgodnie z założeniami Scrum, kwestie zapisane po prawej stronie są wartościowe, ale to elementy po lewej stronie są o wiele bardziej istotne.
scrum

Dzięki takiemu podejściu produkt końcowy jest całkowicie zbieżny z potrzebami inwestora, nawet jeżeli te ewoluowały w trakcie trwania projektu wdrożeniowego. Scrum pozwala redukować koszty oraz znacząco wpływa na produktywność i zaangażowanie zespołu.

Zespoły pracujące w Scrumie są interdyscyplinarne, wysoce komunikatywne oraz samoorganizujące się (w powierzonym zakresie odpowiedzialności). Deweloperzy mają pełną swobodę doboru narzędzi i procedur niezbędnych do wytworzenia wysokiej jakości produktu. W procesie wytwórczym aktywny udział bierze również  przedstawiciel klienta.

W Scrumie decyzje podejmuje się na podstawie wcześniejszych doświadczeń, a nie przyjętych założeń. W każdej chwili możesz zatem zmienić kierunek rozwoju Twojego systemu.

W Scrumie oprogramowanie wytwarzamy w sposób iteracyjny w tzw. Sprintach (zorganizowanych na wzór cyklu P-D-C-A, czyli Plan-Do-Check-Act). Oznacza to, iż system powstaje po kawałku i w krótkich odstępach czasu, podlegając ciągłym ulepszeniom. Scrum pozwala: skracać pętlę uczenia się, maksymalizować wartość biznesową oraz minimalizować ryzyko występowania błędów. Efektem końcowym Sprintu jest gotowy do użycia przyrost funkcjonalny, zawierający wszystkie ukończone elementy systemu wykonane w trakcie danej iteracji.

Filary Scruma

Filarami Scruma są transparentność, inspekcja oraz adaptacja.

Transparentność oznacza, że poszczególne elementy procesu są zawsze widoczne dla zaangażowanych osób. Dzięki zasadzie przejrzystości utrzymywany jest wysoki poziom wzajemnego zrozumienia wszystkich aspektów wdrożenia, np. wspólnego nazewnictwa,  definicji przyrostu itp.

Inspekcja i adaptacja służą wykrywaniu rozbieżności oraz dokonywaniu zmian. W ten sposób unikamy odstępstw od wymagań zgłoszonych przez klienta oraz dostosowujemy produkt do zmiennych warunków.

scrum
scrum

Wartości w Scrumie

Trzy filary Scruma wynikają bezpośrednio z przyjętych wartości: koncentracji, zaangażowania, otwartości, szacunku i odwagi. Dzięki nim możliwe jest stworzenie atmosfery wzajemnego zaufania. Członkowie Zespołu Scrumowego skupiają się tylko na pracy w danym Sprincie.

W projekt zaangażowani są zarówno deweloperzy, jak i interesariusze. Aby osiągnąć sukces, muszą być oni otwarci na nowe pomysły i wyzwania. Członkowie Zespołu Scrumowego wzajemnie szanują swoje opinie oraz kompetencje. Zespół Scrumowy ma odwagę, by przedstawiać swoje idee na forum,  postępować właściwie i przezwyciężać trudności.

Scrum w eVolpe

W eVolpe Scrum przyjmuje formę, którą wypracowaliśmy przez ponad dekadę doświadczeń w projektach wdrożeniowych. Każdorazowo bierzemy pod uwagę potrzeby zgłaszane przez naszych klientów. Na zasady współpracy umawiamy się na samym początku projektu. Interesy Klienta zabezpiecza obustronnie zaakceptowana umowa wdrożeniowa.

Stworzenie Product Backlog

Działania zgodne z metodyką Scrum rozpoczynają się po zamknięciu etapu konsultingu, doboru systemu CRM oraz ustaleń handlowych. Przybierają formę działań analitycznych opisanych szerzej tutaj

Dla klienta zainteresowanego wdrożeniem przeprowadzamy warsztaty System Overview (zapoznanie z systemem) lub Product Discovery (rozpoznanie potrzeb i wymagań wobec systemu).

Są to wysoce kreatywne spotkania, które pozwalają spojrzeć na zarządzanie procedurą biznesową zarówno z wąskiej, jak i szerokiej perspektywy. Warto podkreślić, że uczestnictwo w warsztatach wiąże się z koniecznością Twojego pełnego zaangażowania.

Aby lepiej zwizualizować omawiane zagadnienia, proponujemy Ci pobudzające wyobraźnię techniki myślenia kreatywnego; wszystko z wykorzystaniem kolorowych karteczek samoprzylepnych, pisaków, tablic suchościeralnych oraz folii antystatycznych.

doradztwo crm szkolenia scrum evolpe

Wynikiem przeprowadzonych warsztatów jest Product Backlog, głównie w formie User Stories, czyli „historyjek z życia użytkownika”. Jest on przygotowany przez przedstawiciela eVolpe, który pełni w projekcie rolę proxy Product Ownera (biznesowego łącznika pomiędzy klientem oraz Zespołem Deweloperskim). Następnie Product Backlog jest priorytetyzowany. Działania te realizowane są wspólnie przez proxy Product Ownera oraz Product Ownera, czyli przedstawiciela klienta – osoby odpowiedzialnej za produkt, decyzyjnej w kwestii kształtowania jego wizji i rozwoju.

W niektórych przypadkach, na podstawie powstałego Product Backlog przygotowujemy oszacowanie poszczególnych elementów systemu, tak by uzyskać rząd wielkości projektu przed jego rozpoczęciem. Podejście to stosujemy najczęściej, gdy klientowi zależy na ustaleniu wysokości budżetu projektu. Należy jednak pamiętać, że podejście scrumowe dopuszcza, a wręcz wspiera, dokonywanie zmian i zwrotów kierunku, w którym podąża projekt, więc oszacowanie to ma głównie charakter poglądowy.

W trakcie sprintów

Implementacja projektu scrumowego przebiega w kilkutygodniowych iteracjach. Oznacza to, że po każdym takim okresie następuje przyrost nowych funkcji, zmiana lub udoskonalenie istniejących elementów systemu. Każda iteracja rozpoczyna się od spotkania zwanego Sprint Planningiem. W jego trakcie ustalany jest cel nadchodzącego sprintu, czyli nadrzędna wartość, która zostanie uzyskana.

Na tej podstawie dobierane są również User Stories (historyjki z życia użytkownika), których rozwiązanie pozwala na osiągnięcie przyjętego celu. Tworzą one Sprint Backlog. Druga część spotkania polega na dokładnym zaplanowaniu prac przez Zespół Deweloperski, tak by gotowe zagadnienia spełniały ustalone wcześniej kryteria ukończenia (Definition of Done).

suitecrm scrum evolpe
doradztwo crm scrum evolpe

Jest to niezwykle istotne, gdyż codziennie przez kolejne dni odbywa się krótkie (maksymalnie 15-minutowe) spotkanie zwane Daily Stand-upem. W eVolpe przeprowadzamy je przy tablicach scrumowych (równolegle korzystamy z dostosowanego do naszych potrzeb systemu do zarządzania projektami Redmine). Każdorazowo następuje wtedy inspekcja postępu prac i ewentualna adaptacja wcześniejszego planu do zaistniałych w rzeczywistości warunków. Ustalamy również, co udało się wykonać przez ostatnią dobę, jaki jest plan działania i czy napotkaliśmy jakieś trudności.

W trakcie Sprintów odbywają się również spotkania zwane Refinement. Są one dedykowane nowym wymaganiom, które zgłasza klient, tak by móc je odpowiednio doprecyzować, ewentualnie podzielić na mniejsze, a następnie oszacować. Tak przygotowane zagadnienia są dostępne w Product Backlogu i mogą zostać dobrane do wykonania w trakcie nadchodzących sprintów.

Czym się kończy każdy sprint?

Na koniec sprintu spotkamy się z klientem (najczęściej zdalnie) podczas Sprint Review. Zespół oddaje wtedy uzyskany przyrost, pokrótce prezentując to, co zostało wykonane. Jest to również odpowiedni moment na dyskusję odnośnie do nowych wymagań (które mogły zostać zainspirowane obecnym kształtem produktu), innych przekształceń, a także oczekiwań dotyczących kolejnego Sprintu. Następuje więc inspekcja wykonanych prac, a także adaptacja wymagań do sytuacji, w której się obecnie znajdujemy.

Po każdym ze Sprintów możliwa jest instalacja paczek tworzących przyrost w środowisku produkcyjnym klienta. Oczywiście nie każdy Sprint musi kończyć się takim wydaniem. Jest to w pełni zależne od decyzji klienta.

Pamiętaj! Masz możliwość zapoznania się z nowymi funkcjami w przygotowanym dla Ciebie środowisku testowym. Na tej podstawie następuje ostateczna akceptacja zagadnień z wcześniejszego Sprintu.

doradztwo crm dla branży usługowej scrum evolpe
eksperci crm systemy crm scrum evolpe

Ostatnim spotkaniem, w którym uczestniczy Zespół Scrumowy, czyli proxy Product Owner, Zespół Deweloperski oraz Scrum Master (odpowiedzialny za proces) jest Sprint Retrospective. Retrospektywa to doskonała okazja do inspekcji sposobu, w jakim pracujemy. Warto przyjrzeć się także relacjom międzyludzkim panującym w zespole oraz omówić, co się udało i z czego jesteśmy dumni, a nad czym należy jeszcze pracować. W ten sposób stajemy się jeszcze bardziej efektywni  jako zespół. Następuje tak ważna w Scrumie adaptacja.

Każdy projekt może składać się z wielu następujących po sobie Sprintów 

Zazwyczaj jest to od kilku do nawet kilkudziesięciu iteracji. Gdy uznasz, że produkt jest już skończony, przechodzimy w tryb jego utrzymania ustalony w umowie serwisowej.

Agile

Działania podejmowane w ramach wdrożenia realizowanego w metodyce zwinnej planowane są etapami i na podstawie bieżących doświadczeń użytkowników. Standardowo w ramach każdego z kilkutygodniowych iteracji (tzw. Sprintów) dostarczany jest działający fragment (przyrost) systemu. Może być on na bieżąco testowany przez użytkowników końcowych i to nie tylko pod kątem poprawności działania, ale również praktycznego zastosowania podczas realizacji realnych procesów biznesowych.

Dzięki temu możliwa jest cykliczna korekta rozwiązań oraz wprowadzanie zmian zgodnie z pojawiającymi się potrzebami. Zleceniodawca ma przy tym pełną swobodę sterowania budżetem oraz zakresem planowanych do wykonania prac poprzez nadawanie im odpowiednich priorytetów. Rozliczenie projektu odbywa się na zasadach Time & Material, co oznacza, że nakłady finansowe ponoszone przez inwestora dotyczą wyłącznie czasu i zasobów poświęconych przy pracy nad wdrożeniem.

Tradycyjne i zwinne metodyki
wdrażania systemów IT

Metodyka wdrożeniowa to sposób uporządkowania projektu informatycznego, który umożliwia optymalne przeprowadzenie całego przedsięwzięcia. W przypadku oprogramowania dla przedsiębiorstw niezwykle istotne jest, aby wszelkie aspekty techniczne współgrały z potrzebami biznesowymi zleceniodawcy. W tym celu na przestrzeni lat wyłoniły się dwa przewodnie podejścia metodologiczne: tradycyjne (inaczej: Waterfall, metodyka kaskadowa) oraz zwinne (w tym np. framework o nazwie Scrum).

Którą metodykę wybrać?

Kwestia metodyki wdrożenia systemu informatycznego w firmie powinna zostać bardzo dokładnie rozpatrzona. Niezależnie od ostatecznej decyzji nie warto rozpoczynać procesu bez analizy wymagań. Oba podejścia – tradycyjne i zwinne – zakładają precyzyjne zbadanie otoczenia i warunków wewnętrznych determinujących architekturę zamawianego systemu. To, czy prace implementacyjne będą prowadzone z wykorzystaniem metodyki Waterfall, czy Agile, w większości przypadków zależy od podejścia zleceniodawcy do kwestii jego aktywnego udziału we wdrożeniu.

Dysponując swoim czasem, należy zdawać sobie sprawę, że Scrum wymaga stałej komunikacji i współpracy oraz bieżącej weryfikacji wykonanych prac. Dla niektórych firm tak duże zaangażowanie pracowników w proces wdrożenia stanowi pewną niedogodność. Inni uważają to jednak za główną zaletę podejścia Agile. Z doświadczenia eVolpe wynika jednak, że zaangażowanie po stronie zleceniodawcy ma kluczowe znaczenie dla efektywnego wdrożenia.

Wyzwania podczas współpracy na zasadach Waterfall

  • Konieczność opracowania koncepcji gotowego systemu na bardzo wstępnym etapie
  • Czasochłonność pracy nad dokumentacją 
  • Konieczność rozważenia wielu możliwych scenariuszy
  • Ryzyko szybkiej dezaktualizacji wymagań określonych w dokumentacji
  • Opóźniony start projektu (wstrzymywanie właściwego dewelopmentu do czasu zakończenia prac nad dokumentacją)
  • Niezbędny bufor w oszacowaniu (związany z ryzykiem wystąpienia sytuacji nieprzewidzianych)
  • Absorbująca obie strony współpraca nad dokumentacją
  • Utrudnione zarządzanie zmianą (Change Management) – nieustanna aktualizacja wymagań, konieczność zatwierdzania zmian przez wszystkich decydentów, wydłużone oczekiwanie na efekty, spowolnienie postępów w projekcie
  • Gotowy system zgodny z zatwierdzoną obustronnie dokumentacją (niekoniecznie zgodny z aktualnymi potrzebami Klienta)
  • Stała cena (fixed price) za system zgodny z dokumentacją (niekoniecznie zgodny z aktualnymi potrzebami Klienta)
  • Niski stopień formalizacji procesu
  • Transparentna informacja o przebiegu wdrożenia
  • Wsparcie konsultacyjne dla użytkowników systemu
  • Stały kontakt z analitykiem
  • Dostęp do programistów zaangażowanych w projekcie
  • Elastyczne podejście do zmiany
  • Zmiany wynikają ze zmieniających się potrzeb Klienta lub na bieżąco uzgadnianych usprawnień dotyczących sposobu działania
  • Zabezpieczenie przed manipulacją harmonogramem lub budżetem (chyba, że to zatwierdzasz lub zlecasz)
  • Rozliczenia Time&Material z uwzględnieniem oszacowania i górnej granicy budżetu
  • Opłata wyłącznie za czas i zasoby poświęcone w projekcie
  • Koszty transparentnie komunikowane w systemie projektowym (powiadomienia rozsyłane na skrzynki mailowe zainteresowanych osób)
  • Stałe kontrola budżetu przez Product Ownera (wyznaczonego przez Ciebie koordynatora projektu)
  • Możliwość pracy na „systemie w budowie” (MVP) i dostawiania do niego kolejnych gotowych funkcji (wraz z postępem prac)
  • Systematyczne raportowanie o sytuacji
  • Wieloletnie doświadczenie  specjalistów eVolpe w projektach scrumowych poparte referencjami klientów takich jak: MAN Truck & Bus Polska, Mokate, Empik, NASK czy Contrain

Zalety współpracy na zasadach Scrum

  • Umowa wdrożeniowa – zabezpieczenie interesów Klienta
  • Możliwość wstrzymania lub zakończenia projektu na dowolnym etapie oraz powrotu do jego realizacji po czasie (decyzją Klienta)
  • Analiza przedwdrożeniowa (spotkanie w formie warsztatów, które służy zrozumieniu procesu biznesowego klienta oraz rozpoznaniu najważniejszych potrzeb Klienta do odzwierciedlenia w systemie)
  • Oszacowanie systemu z podziałem na mniejsze elementy i informacją o szacunkowej cenie każdego z nich
  • Wskazanie górnej granicy budżetu na system w aktualnie uzgodnionej formie
  • Natychmiastowe rozpoczęcie prac nad systemem (bez konieczności przygotowania dokumentacji – oszczędność czasu)
  • Regularne wydania kolejnych funkcji zgodnie ze zgłaszanymi, aktualnymi potrzebami (zamiast pracy nad dokumentacją)
  • Aktywny udział przedstawiciela Klienta (Product Owner) na każdym etapie rozwoju systemu
  • Swoboda dobierania funkcji do wytworzenia przez zespół deweloperski i ich priorytetyzowania w czasie
  • Bieżące uzupełnianie Backloga Produktu o nowe zagadnienia do realizacji (we współpracy z analitykiem)
  • Udział w spotkaniach z zespołem deweloperskim (Rewiev)
  • Dostęp do profesjonalnego systemu projektowego (całkowita transparentność informacji o postępach, harmonogramie, zaangażowaniu czasowym, wykorzystywanych zasobach oraz budżecie)
  • Możliwość przetestowania nowych funkcji przed ich wydaniem w środowisku testowym (maksymalizacja wartości biznesowej wytwarzanej na bieżąco aplikacji)
  • Zatwierdzanie gotowego przyrostu do systemu przez Product Ownera
  • Partnerska współpraca Dostawca-Klient (stała kontrola jakości, harmonogramu oraz budżetu)

Porozmawiaj z nami o usługach konsultingu i wdrożenia systemów CRM w Twojej firmie!

Skontaktujemy się z Tobą
w ciągu 24 godzin.

Przewiń do góry