Wprowadzenie do Agile i Scrum

Agile to metodologia opracowywania oprogramowania, która ma przepustowość umożliwiającą szybkie dostosowanie się do zmieniających się wymagań projektu i dostosowanie do rozwoju nowego produktu w trakcie jego trwania lub po jego zakończeniu, w przeciwieństwie do tradycyjnego zarządzania projektami.

Rozumiemy wyraźną przewagę Agile nad tradycyjną metodologią zarządzania projektami:

Tradycyjne podejście:

  • Szczegółowe planowanie przed rozpoczęciem
  • Pozwala na przyjęcie minimalnych zmian
  • Naprawiono definicję projektu

Podejście zwinne:

  • Wymagane jest minimalne planowanie przed rozpoczęciem
  • Akceptuje i dostosowuje się do zmian
  • Naprawiono czas i koszty

Scrum to najczęściej stosowane i popularne podejście do wdrażania zwinnej metodologii.

Wkrótce przejdziemy do sekcji scrum, ale najpierw zobaczmy więcej o zwinnym frameworku.

Zasady manifestu Agile

  1. Zadowolenie klienta ma najwyższy priorytet, który jest osiągany poprzez ciągłe i wczesne dostarczanie cennego oprogramowania.
  2. Dostarcz działające oprogramowanie w krótkim czasie dzięki ciągłemu rozwojowi nowego oprogramowania / produktów zgodnie z tym samym podejściem.
  3. Powinniśmy być w stanie sprostać zmieniającym się wymaganiom, nawet jeśli spóźni się w trakcie cyklu życia SDLC.
  4. Członkowie zespołu powinni być zawsze zmotywowani i do tego należy zapewnić wystarczające wsparcie i dobre środowisko.
  5. Deweloperzy i ludzie biznesu muszą codziennie współpracować podczas całego projektu.
  6. Za najbardziej efektywny sposób rozmowy uważa się bezpośrednią interakcję.
  7. Zrównoważony rozwój. Wszyscy członkowie zespołu powinni być w stanie utrzymać stałe tempo.
  8. Działający produkt / oprogramowanie uważa się za podstawową miarę postępu.
  9. Ostatecznie głównym celem powinna być doskonałość techniczna i solidna konstrukcja.
  10. W procesie SDLC należy przestrzegać prostoty
  11. Zespoły powinny faktycznie wykazywać ciągłą skuteczność i przyjmować wszelkie zmiany w celu zwiększenia skuteczności.
  12. Solidne wzornictwo i architektura pochodzą od samoorganizujących się zespołów.

Podejścia do sprawnego wdrażania:

Link: https://goo.gl/images/fkZqGe

  1. SCRUM - jest to iteracyjne podejście, w którym występuje tak zwane sprinty trwające do jednego lub dwóch tygodni. Takie podejście pozwala zespołom regularnie dostarczać działający produkt lub oprogramowanie.
  2. Kanban - w celu wdrożenia zwinnego, to podejście wykorzystuje strukturę wizualną. Tutaj nie ma sprintu o stałej długości, a zespół otrzymuje zadanie z zaległości priorytetowych.
  3. Extreme Programming (XP) - To podejście ma na celu poprawę jakości oprogramowania i szybkości reakcji poprzez włączenie prostoty, informacji zwrotnych i przyjęcie zmian.
  4. Rozwój oparty na cechach (FDD) - Podejście to obejmuje 5 podstawowych działań, które są następujące: - Opracowanie ogólnego modelu, zbudowanie listy funkcji, planowanie według funkcji, projektowanie według funkcji i budowanie według funkcji.
  5. Adaptive System Development (ASD) - to podejście może być wykorzystane do budowy złożonego oprogramowania i systemów i koncentruje się głównie na współpracy zespołu i samoorganizacji. Obejmuje 3 iteracyjne działania - Spekuluj, Współpracuj i Ucz się.
  6. Metoda dynamicznego rozwoju systemu - DSDM to zwinne podejście oparte na iteracyjnym i przyrostowym podejściu, które w dużej mierze opiera się na metodologii szybkiego tworzenia aplikacji. Zajmuje się typowymi niepowodzeniami projektów, takimi jak problemy z budżetem projektu, brakujące terminy itp.
  7. Lean Software Development - Lean Software Development to zwinne podejście, które ma 7 podstawowych zasad, które są następujące: Eliminuj marnotrawstwo, Wzmocnij zespół, Dostarcz szybko, Zoptymalizuj całość, Zbuduj jakość, Odłóż decyzje i Wzmocnij naukę.

Co to jest Scrum?

W poprzednich sekcjach widzieliśmy już podejścia stosowane do wdrożenia procesu Agile, a Scrum był jednym z nich, Scrum jest jedną z najważniejszych i najczęściej stosowanych metodologii Agile. Scrum to iteracyjne podejście, w którym istnieje coś takiego jak sprinty trwające do jednego lub dwóch tygodni. Takie podejście pozwala zespołom regularnie dostarczać działający produkt lub oprogramowanie. Tutaj obowiązki, role i spotkania są ustalane w Scrumie, a sprinty to harmonogramy, w których odbywa się planowanie sprintu, demo sprintu, codzienne wstawanie i retrospekcja sprintu.

Role / zespoły Scrumowe:

Link: https://goo.gl/images/XpNHBe

  1. Scrum Master - Scrum Master to rola odpowiedzialna za zespół scrumowy, aby postępował zgodnie z metodologią Scrum. Scrum Master organizuje spotkania, zachęca zespół, ułatwia planowanie i śledzenie, radzi sobie z wyzwaniami i zajmuje się wąskimi gardłami. Scrum Master komunikuje się również z właścicielem produktu, aby upewnić się, że zaległości produktu są gotowe do następnego sprintu.
  2. Właściciel produktu - Właściciel produktu jest odpowiedzialny za analizę i komunikację wersji oprogramowania zespołowi Scrum. Właściciel produktu koordynuje również z Scrum Master, aby decydować o zaległościach produktowych dla sprintu.
  3. Zespół programistów - Zespół programistów składa się ze specjalistów odpowiedzialnych za ciągły rozwój, testowanie i dostarczanie oprogramowania. Określają, jak często dostarczać fragmenty prac.

Kroki w Scrum Flow:

Link: https://goo.gl/images/6YTUPf

  1. Backlog produktu - Backlog produktu przechowuje listę funkcji produktu. Właściciel produktu i Scrum Master są odpowiedzialni za nadanie priorytetu elementom zaległości na podstawie historii użytkowników i wymagań.
  2. Planowanie sprintu - jest to spotkanie, które ułatwia Scrum Master, w którym Właściciel produktu przedstawia szczegóły zaległości produktu, ustala kryteria akceptacji dostawy oraz zespół programistów, którzy określają pracę i wysiłek, jaki robili na co dzień.
  3. Udoskonalenie zaległości - Aby utrzymać zaległość produktu, używamy Udoskonalenia zaległości. Tutaj historie użytkowników są podzielone na mniejsze części, a wszelkie nieistotne historie użytkowników są usuwane
  4. Daily Scrum - Codziennie 15 minut zajmuje spotkanie, podczas którego omawiane są w zasadzie trzy pytania: Co zostało osiągnięte wczoraj, jaki jest plan na dziś i jakie są przeszkody.
  5. Spotkanie przeglądowe sprintu - spotkanie odbywa się na końcu każdego sprintu, podczas którego prezentowana jest prezentacja na żywo, aby pokazać, co udało się osiągnąć podczas sprintu.
  6. Spotkanie retrospektywne Sprint - możemy również nazwać to spotkanie sukcesem, na którym zespół omawia proces, który działał lub który nie działał podczas sprintu, wraz z obejściami.

Wniosek

W tym artykule widzieliśmy, że Agile jest metodologią tworzenia oprogramowania, która ma przepustowość umożliwiającą szybkie dostosowanie się do zmieniających się wymagań projektu i dostosowanie się do rozwoju nowego produktu w trakcie trwania projektu lub po jego zakończeniu, w przeciwieństwie do tradycyjnego zarządzania projektami, podczas gdy Scrum jest najczęściej stosowane i popularne podejście do wdrażania metodyki zwinnej.

Polecane artykuły

To był przewodnik po tym, co jest zwinne i Scrum. Tutaj omówiliśmy różne podejścia Agile i Scrum. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Co to jest sztuczna inteligencja
  2. Wywiad Agile Scrum Pytania
  3. Co to jest SDLC
  4. Agile vs Scrum vs Waterfall