Otwórz sobie drzwi do kariery w IT     |       -30% na ścieżki kariery     |      Jeszcze przez:

2 dni 12 godzin
close
Cart icon
User menu icon
User icon
Skontaktuj się z nami:
+48 888-916-333
Lightbulb icon
Jak to działa?
FAQ icon
FAQ
Contact icon
Kontakt
Terms of service icon
Regulamin zakupów
Privacy policy icon
Polityka prywatności

Scrum - szybkie wprowadzenie dla początkujących

Wytwarzanie oprogramowania przed erą Scrum

Przed erą Scrum, dominującym podejściem do tworzenia oprogramowania był model kaskadowy. Proces rozpoczynał się od zbierania wymagań, które były ustalane wspólnie z klientem. Następnie opracowywano design, czyli ogólny plan, jak ma działać i wyglądać program. Kolejny krok to programowanie, gdzie tworzono kod zgodny z opracowanym designem.

Po zakończeniu programowania przechodzono do testowania, aby upewnić się, że kod działa zgodnie z założeniami. Na końcu klient otrzymywał gotowy produkt, a firma IT zapewniała wsparcie w przypadku problemów.

Wady tradycyjnego podejścia

Powyższy proces wydaje się prosty i logiczny, ale ma kilka poważnych wad.

Sztywność etapów

Każda faza musi być zakończona przed rozpoczęciem kolejnej. Programiści nie mogli rozpocząć pracy, dopóki faza designu (projektu) nie była w pełni zakończona.

Brak zaangażowania klienta

Klient ma wpływ tylko na początku procesu, podczas zbierania wymagań. Gdy programowanie się rozpoczyna, jego rola jest zminimalizowana. Klient czekał na finalny produkt, często bez możliwości wprowadzania jakichkolwiek zmian w trakcie realizacji projektu.

Problemy z wymaganiami

Model zakłada, że klient dokładnie wie, czego chce na samym początku projektu. W rzeczywistości jednak klienci często nie są w stanie precyzyjnie określić swoich potrzeb od razu. To prowadziło do sytuacji, gdzie projekt rozwijał się w oparciu o niepełne lub błędne założenia.

Problemy z odpowiedzialnością

Gdy okazało się, że kod jest pełen błędów lub nie spełnia oczekiwań, osoby, które go napisały, mogły już być zaangażowane w inne projekty lub nawet pracować w innej firmie.

Sztywność procesu, brak możliwości wprowadzania zmian w trakcie realizacji oraz długi czas realizacji sprawiały, że finalny produkt często nie spełniał oczekiwań klienta.

Te problemy przyczyniły się do powstania nowych, bardziej elastycznych metod, takich jak Scrum, które lepiej odpowiadają na dynamiczne potrzeby rynku i klientów.

Co to jest Scrum

Scrum jest bardzo elastyczną metodyką, która pozwala zespołom na szybkie dostosowywanie się do zmian i efektywne zarządzanie projektami.

Główne założenia Scrum

  • Scrum kładzie nacisk na dostarczanie wartości w małych, ale regularnych krokach.
  • Wszystkie aspekty pracy są jawne i dostępne dla wszystkich członków zespołu.
  • Regularne przeglądy pozwalają na szybkie reagowanie na zmieniające się wymagania i warunki.

Scrum narodził się z potrzeby zmiany w sposobie wytwarzania oprogramowania.  Jest jedną z najpopularniejszych metodyk zwinnych (ang. Agile) na świecie, z powodzeniem stosowaną w różnych branżach - nie tylko w IT.

Kluczowe elementy Scrum

Scrum jest w praktyce realizowany dzięki trzem elementom: zespołom, artefaktom i zdarzeniom.

Zespół Scrumowy

Składa się z kilku osób i pozwala na efektywną komunikację oraz współpracę. Kluczowym założeniem jest to, że zespół samodzielnie zarządza swoją pracą. Członkowie zespołu podejmują decyzje dotyczące przydzielania zadań, planowania i wykonywania pracy. Kluczowe role to: Developerzy (np. programiści), Product Owner oraz Scrum Master.

Artefakty

W Scrum używa się trzech głównych artefaktów (koncepcji): backlogu produktu, backlogu sprintu oraz przyrostu. Są one niezbędne, aby zespół mógł skutecznie zarządzać pracą i dostarczać klientowi wartość.

  • Backlog Produktu to lista zadań i funkcji, które mają być zaimplementowane w produkcie.
  • Backlog Sprintu to wybrane zadania z backlogu produktu, które zespół zamierza zrealizować w trakcie jednego sprintu.
  • Przyrost to działająca wersja produktu, która powstaje po każdym sprincie i może być wydana użytkownikom.

Zdarzenia

Kolejnym ważnym elementem są zdarzenia.

  • Sprint - krótki, zazwyczaj 2-4 tygodniowy cykl pracy, w którym zespół realizuje ustalone cele.
  • Planowanie Sprintu - spotkanie, podczas którego zespół planuje pracę na najbliższy sprint.
  • Codzienny Scrum (Daily Scrum) - codzienne, krótkie spotkanie zespołu, na którym omawiane są postępy oraz problemy.
  • Przegląd Sprintu (Sprint Review) - spotkanie podsumowujące sprint, na którym prezentowane są rezultaty pracy.
  • Retrospektywa Sprintu (Sprint Retrospective) - spotkanie, na którym zespół analizuje, co poszło dobrze, a co można ulepszyć w przyszłych sprintach.

Scrum Guide

Warto poświęcić trochę czasu na zapoznanie się z oficjalnym przewodnikiem po Scrum, znanym jako Scrum Guide. Jego autorami są twórcy Scrum: Ken Schwaber i Jeff Sutherland.

W przewodniku zebrano założenia Scrum, dobre praktyki pracy oraz wiele innych informacji przydatnych osobom, które chcą wdrozyć Scrum w swoje firmie.

Kim jest Scrum Master

Warto na koniec omówić rolę Scrum Mastera. Rola ta czasami jest niezrozumiała, zwlaszcza dla osób, które nie maja dużego doświadczenia z pracą w zespole Scrumowym.

Na pierwszy rzut oka, obowiązki Scrum Mastera mogą wydawać się ograniczone do organizacji spotkań i przestrzegania zasad Scrum. Rzeczywistość jest jednak bardziej złożona.

Wspieranie zespołu to kluczowy aspekt pracy Scrum Mastera. Może to oznaczać tworzenie narzędzi automatyzujących procesy, takie jak przesuwanie zadań w systemach zarządzania projektami, co odciąża deweloperów i zapewnia płynność pracy.

Scrum Master nie tylko dba o zespół, ale również pełni rolę mediatora i koordynatora między zespołem oraz interesariuszami. W niektórych przypadkach jest odpowiedzialny za codzienne informowanie partnerów zewnętrznych o postępach prac. Wymaga to skrupulatności i dobrej organizacji.

Scrum Master często ustanawia metryki, które mierzą postępy i jakość pracy zespołu. Analizuje te dane, aby wyciągać wnioski i wprowadzać usprawnienia.

Scrum Master to bardzo istotna rola i warto sobie zdawać sprawę z jej znaczenia dla sprawnej pracy zespołu.

Podsumowanie

Metodyka Scrum powstała jako odpowiedź na wady tradycyjnego, kaskadowego modelu wytwarzania oprogramowania. Scrum to elastyczne podejście, które umożliwia zespołom efektywne dostosowywanie się do zmieniających się wymagań.