Jaka jest różnica między Scrum a Agile Development? [Zamknięte]

385

Jaka jest różnica między Scrum a Agile Development? Czy sprint i iteracje są takie same?

Rahul Agrawal
źródło
3
Myślę, że to pytanie może być nie na temat, ponieważ nie jest związane z programowaniem.
Kod L ღ ver
Dotyczą one sektora produkcyjnego i produkcyjnego. Nie jest w pełni zrozumiałe, w jaki sposób zamierzają złagodzić istniejące praktyki oprogramowania. Które są czyste, zrozumiałe, grzeczne, dojrzałe.
Siva Tumma
1
Głosuję za zamknięciem tego pytania jako nie na temat, ponieważ dotyczy ono procesu lub metody tworzenia oprogramowania.
Thomas Owens,
1
Scrum jest jedną z metodologii wdrażania procesu Agile, takiego jak Kanban. Idealnie powinniśmy więc szukać różnicy między Scrum i Kanban atlassian.com/agile/kanban/kanban-vs-scrum
Amitesh

Odpowiedzi:

353

Scrum to tylko jedna z wielu iteracyjnych i przyrostowych zwinnych metod tworzenia oprogramowania. Znajdziesz tutaj bardzo szczegółowy opis procesu.

W metodologii SCRUM Sprint jest podstawową jednostką rozwoju. Każdy sprint rozpoczyna się od spotkania planistycznego, podczas którego identyfikowane są zadania sprintu i podejmowane jest szacunkowe zobowiązanie do osiągnięcia celu sprintu. Sprint kończy się przeglądem lub spotkaniem retrospektywnym, na którym dokonuje się przeglądu postępów i identyfikuje wnioski na kolejny sprint. Podczas każdego sprintu zespół tworzy gotowe części produktu.

W metodach zwinnych każda iteracja obejmuje zespół pracujący przez pełny cykl rozwoju oprogramowania, w tym planowanie, analizę wymagań, projektowanie, kodowanie, testowanie jednostkowe i testowanie akceptacji, gdy działający produkt zostanie przedstawiony interesariuszom.

Więc jeśli w SCRUM Sprint wykonujesz wszystkie fazy rozwoju oprogramowania (od analizy wymagań do testów akceptacyjnych), i moim zdaniem powinieneś, możesz powiedzieć, że Sprinty SCRUM odpowiadają iteracjom AGILE.

Andrea Sindico
źródło
12
Świetne wyjaśnienie. Kilka modyfikacji, które zasugerowałem: Planowanie sprintu to pierwsze wydarzenie w czasomierzu sprintu. Sprinty nie mają przerw, więc nic nie dzieje się przed sprintem.
Ryan Cromwell
63
Odpowiedź nie jest wystarczająco jasna. Sposób, w jaki wyjaśnia te dwie rzeczy, wydaje się być zasadniczo podobny; do ich opisu zastosowano tylko różne terminologie. Myślę, że ta odpowiedź , mimo że jest tylko jedną linią, jest jasna i precyzyjnie wskazuje różnicę, że Agile jest tylko filozofią, a Scrum jest implementacją tej filozofii.
Nawaz,
1
Scrum to środowisko do opracowywania, dostarczania i utrzymywania złożonych produktów, a nie zarządzania projektami. Była to jedna z podstaw zwinnej filozofii opisanej w manifeście , a nie jej wynik.
Alan Larimer,
76

Jak wspomniano powyżej przez innych,

Scrum to iteracyjna i przyrostowa zwinna metoda tworzenia oprogramowania do zarządzania projektami oprogramowania oraz rozwojem produktu lub aplikacji. Tak więc Scrum jest w rzeczywistości rodzajem podejścia zwinnego, które jest szeroko stosowane w rozwoju oprogramowania.

Tak więc Scrum jest specyficznym smakiem Agile, zwanym jest zwinnym ramem zarządzania projektami.

Również Scrum ma głównie dwie role, które są: 1. Rola główna / główna 2. Rola pomocnicza

Główna / główna rola: składa się głównie z trzech ról: a). Scrum Master, b). Właściciel produktu, c). Zespół programistów.

Rola pomocnicza: Role pomocnicze w zespołach Scruma to te, które nie mają formalnej roli i rzadko uczestniczą w procesji Scruma, ale mimo to należy je wziąć pod uwagę. mianowicie. Interesariusze, kierownicy.

Scrum Master: - W scrum jest 6 rodzajów spotkań:

  • Codzienny Scrum / Standup
  • Uwzględnianie zaległości: fabuła
  • Scrum of Scrums
  • Spotkanie dotyczące planowania sprintu
  • Spotkanie podsumowujące sprintu
  • Sprint retrospektywny

Daj mi znać, jeśli ktoś potrzebuje więcej informacji na ten temat.

Rajeev Kumar Barnwal
źródło
2
Niezły opis ról w Scrumie. dzięki!
asgs
1
Dzięki! to świetna pomoc dla początkujących
Tesfa Zelalem
1
jaki jest cel spotkania Scrum of Scrums?
kn3l
30

SCRUM:

SCRUM jest rodzajem podejścia zwinnego. To ramy, a nie metodologia.

Nie zawiera szczegółowych instrukcji, co należy zrobić, a większość z nich zależy od zespołu tworzącego oprogramowanie. Ponieważ rozwój projektu wie, jak rozwiązać problem, dlatego wiele zostało na nich

Wielofunkcyjne i samoorganizujące się zespoły są niezbędne w przypadku scrum. W tym przypadku nie ma lidera zespołu, który przypisywałby zadania członkom zespołu, a cały zespół rozwiązuje problemy lub problemy. Jest interdyscyplinarny w taki sposób, że wszyscy są zaangażowani w projekt, od pomysłu do realizacji projektu.

Zaletą scrum jest to, że kierunek projektu należy dostosować na podstawie ukończonych prac, a nie spekulacji lub prognoz.

Zaangażowane role: właściciel produktu, Scrum Master, członkowie zespołu

Metodologia zwinna:

Twórz aplikacje o nieprzewidywalnym charakterze

W tej metodologii stosowane są iteracyjne i przyrostowe kadencje pracy zwane sprintami.

Zarówno Agile, jak i SCRUM podążają za systemem - niektóre funkcje zostały opracowane jako część sprintu i na końcu każdego sprintu; funkcje są uzupełniane już od kodowania, testowania i integracji z produktem. Demonstracja funkcjonalności jest dostarczana właścicielowi na końcu każdego sprintu, aby można było uzyskać informacje zwrotne, które mogą być pomocne w następnym sprincie.

Manifest dotyczący zwinnego rozwoju:

  1. Osoby i interakcje dotyczące procesów i narzędzi
  2. Działające oprogramowanie w obszernej dokumentacji
  3. Współpraca z klientami w zakresie negocjacji umów
  4. Reagowanie na zmianę po wykonaniu planu

Oznacza to, że chociaż w przedmiotach po prawej stronie znajduje się wartość, bardziej cenimy przedmioty po lewej stronie.

Aravind Krishnakumar
źródło
20

Jak Scrum pasuje do Agile Development?

Podczas gdy metodologia Agile może być stosowana do rozwoju produktu nie tylko w branży oprogramowania, ale także w innych branżach, Scrum jest specyficzny dla rozwoju oprogramowania.

Scrum nie jest metodologią. Po prostu zapewnia strukturę, dyscyplinę i ramy dla rozwoju zwinnego. Cały projekt składa się z serii sprintu lub cykli sprintu (od 1 do n), przy czym każdy sprint ma taki sam czas trwania. Jeżeli „czas” oznacza T, wówczas T1 = T2 = T3 =… Tn. Sprinty mogą trwać od 2 do 4 tygodni. Sprinty krótsze niż 2 tygodnie nie są idealne i są rzadziej stosowane. Na końcu każdego Sprint powstaje funkcjonalne / działające oprogramowanie, które użytkownicy mogą faktycznie przetestować.

Oryginalny artykuł jest tutaj ...

https://www.linkedin.com/pulse/agile-development-using-scrum-what-you-dont-know-sri-prakash?trk=prof-post

Joseph Boyardee
źródło
4
Należy pamiętać, że Scrum nie jest specyficzny dla rozwoju oprogramowania ... jest bardzo popularny w tworzeniu oprogramowania, ale tylko ze względu na złożoną naturę tworzenia oprogramowania. Każdy skomplikowany rozwój produktu zyskałby na wykorzystaniu Scrum. Ciekawostka: jeśli przeszukujesz Scrum Guide, nie wspomina on ani słowa „oprogramowanie”.
Nick Clark
15

Agile i Scrum to terminy używane w zarządzaniu projektami. Metodologia Agile wykorzystuje przyrostowe i iteracyjne rytmy pracy, które są również nazywane sprintami. Z drugiej strony Scrum jest rodzajem zwinnego podejścia stosowanego w tworzeniu oprogramowania.

Zwinność to praktyka, a Scrum to proces postępowania zgodnie z tą praktyką, podobnie jak eXtreme Programming (XP), a Kanban to proces alternatywny do postępowania zgodnie z praktyką programowania zwinnego.

Syeful Islam
źródło
9

Metodologia wodospadu to sekwencyjny proces projektowania. Oznacza to, że po zakończeniu każdego z ośmiu etapów (koncepcja, inicjacja, analiza, projekt, budowa, testowanie, wdrożenie i utrzymanie) programiści przechodzą do następnego kroku.

Ponieważ proces ten jest sekwencyjny, po zakończeniu kroku programiści nie mogą wrócić do poprzedniego kroku - nie bez zarysowania całego projektu i od początku. Nie ma miejsca na zmiany lub błędy, dlatego na początku należy ustalić wynik projektu i rozległy plan, a następnie postępować ostrożnie

Certyfikacja ACP Agile powstała jako „rozwiązanie” wad metodologii kaskadowej. Zamiast sekwencyjnego procesu projektowania metodologia zwinna stosuje podejście przyrostowe. Programiści zaczynają od uproszczonego projektu, a następnie zaczynają pracę nad małymi modułami. Praca nad tymi modułami odbywa się w cotygodniowych lub miesięcznych sprintach, a na końcu każdego sprintu oceniane są priorytety projektu i uruchamiane testy. Te sprinty umożliwiają wykrywanie błędów i uwzględnianie opinii klientów w projekcie przed uruchomieniem następnego sprintu.

Proces ten, ze względu na brak wstępnego projektu i etapów, jest często krytykowany za współpracę opartą na zasadach, a nie na procesie.

użytkownik110066
źródło
Zwinny to ogólne angielskie słowo, które oznacza możliwość tworzenia zmian i reagowania na nie. W świecie tworzenia oprogramowania Agile istnieje zestaw zwinnych metodologii i frameworka (wszystkie można znaleźć na wiki), jednym z nich jest SCRUM, a SCRUM jest frameworkiem, a nie metodologią.
Don_Manj
9

Na wstępie mogę powiedzieć - Agile to ewolucyjna metodologia z Unified Process, która koncentruje się na rozwoju iteracyjnym i przyrostowym (IID). IID kładzie większy nacisk na iteracyjny rozwój na etapach budowy (faktyczne kodowanie) i na dostawy przyrostowe. Nie kładłoby to większego nacisku na analizę wymagań (tworzenie) i projektowanie (opracowywanie) obsługiwane w samych iteracjach. Iteracja tutaj nie jest więc „mini projektem samym w sobie”.

W Agile bierzemy ten IDD nieco dalej, dodając więcej rzeczywistości, takich jak współpraca zespołowa, wymagania ewolucyjne i projektowanie itp. A SCRUM to narzędzie, które umożliwia to, biorąc pod uwagę czynniki ludzkie i budując wokół zasady „mądrości grupy”. Sprint jest więc „mini projektem samym w sobie” ulepszającym czysty model IID.

Tak więc, iteracje realizowane w zwinny sposób są, tak, teoretycznie, sprintami (podkreślając niewielki rozmiar iteracji i szybkie dostawy). Tak naprawdę nie rozróżniam Agile od SCRUM i widzę, że SCRUM to naturalny sposób na wdrożenie zasad Agile.

Faizulla Shaik
źródło