Czym jest Sprint w SCRUMie?

W metodykach zwinnych istnieje pojęcie iteracji w tworzeniu oprogramowania, które rozumiemy jako proces analizy, wdrażania, wdrażania i testowania określonej części oprogramowania. W SCRUM sprint to taka większa iteracja – czyli jeden z cykli w rozwoju oprogramowania.

Celem każdego sprintu jest funkcjonująca całość. Tak funkcjonującą jednostkę będzie można następnie przetestować i zatwierdzić. Dlatego każdy sprint musi być nzaplanowany tak, aby wynikiem było oprogramowanie wykonywalne.

Dlaczego sprint tak naprawdę nazywa się sprintem? Podobnie jak przed sprintem, najpierw jakościowo się przygotowujesz, nie masz już kontroli nad sprintem – dajesz z siebie wszystko, aby uzyskać jak najlepszy wynik. Na pewno znacie to z amerykańskich filmów, gdzie ujęcia w zwolnionym tempie z dobrą muzyką potrafią w „nadludzki sposób” wpłynąć na bohaterskie występy niejednego sportowca-amatora. Zanim zaczniesz biegać, ani Ty, ani Twój trener nie pomożecie Wam uzyskać lepszego wyniku, stosując jakiekolwiek instrukcje.

Tak więc na początku sprintu planujemy, jaka będzie treść i cel tego sprintu. Ustalmy zatem, jak powinien wyglądać wynik sprintu. Następnie po prostu analizujemy, planujemy, projektujemy, kodujemy i testujemy.

Jak długi powinien być sprint?

Idealna długość sprintu wynosi od dwóch do pięciu tygodni. Jeśli mamy wymagania klientów, które często się zmieniają, możliwe jest skrócenie sprintu do jednego tygodnia. Jeśli mamy stosunkowo stabilne wymagania, możemy wydłużyć sprint do sześciu tygodni.

Jeśli sprint jest zbyt długi, trudno go kontrolować. Podczas długich sprintów trzeba stale się sprawdzać, aby nie powrócić do modelu wodospadu z lat 50. XX wieku.

Jeśli sprint jest za krótki, w jednym sprincie nie wykonasz zbyt wiele przydatnej pracy. Porównałbym to do samochodu wyczynowego (np. nowego Audi z silnikiem koncernu 1.8T), który jest na pierwszym biegu. Potencjał (elastyczność, osiągi) silnika jest większy lub silnik można wykorzystać efektywniej niż kręcić powyżej 5000 obr/min przy prędkości przelotowej 50 km/h. W SCRUM oznacza to zbyt duży narzut metodologiczny.

Jak zarządza się sprintem?

Ponieważ SCRUM jest metodologią zwinną, sprint nie jest zbyt kontrolowany, lub sam jeździ. Spotkania zespołu powinny odbywać się codziennie i mieć charakter bardziej informacyjny. Ponieważ każdy członek zespołu wybiera żądane zadanie z listy zadań, nie ma potrzeby przydzielania pracy poszczególnym członkom zespołu.

Marián Knězek