SDLC – Agile Model (Polski)

Reklamy

Zwinny model SDLC to połączenie iteracyjnych i przyrostowych modeli procesów z naciskiem na zdolność adaptacji procesu i zadowolenie klienta dzięki szybkiej dostawie działającego oprogramowania. Metody zwinne dzielą produkt na małe przyrostowe kompilacje. Te kompilacje są dostarczane w iteracjach. Każda iteracja trwa zwykle od około jednego do trzech tygodni. Każda iteracja obejmuje międzyfunkcyjne zespoły pracujące jednocześnie nad różnymi obszarami, takimi jak –

  • Planowanie
  • Analiza wymagań
  • Projektowanie
  • Kodowanie
  • Testy jednostkowe i
  • Testy akceptacyjne.

Pod koniec iteracji działający produkt jest wyświetlany klientowi i ważnym interesariuszom.

Co to jest zwinność?

Model zwinny zakłada, że każdy projekt musi być traktowany inaczej, a istniejące metody muszą być dostosowane tak, aby jak najlepiej odpowiadały wymaganiom projektu. W Agile zadania są podzielone na przedziały czasowe (małe ramy czasowe), aby zapewnić określone funkcje dla wydania.

Podejmowane jest podejście iteracyjne, a po każdej iteracji dostarczane jest działające oprogramowanie. Każda kompilacja jest przyrostowa pod względem funkcji; ostateczna wersja zawiera wszystkie funkcje wymagane przez klienta.

Oto graficzna ilustracja modelu Agile –

Agile proces myślowy rozpoczął się na wczesnym etapie rozwoju oprogramowania iz czasem stał się popularny ze względu na jego elastyczność i zdolność adaptacji.

Do najpopularniejszych metod Agile należą Rational Unified Process (1994), Scrum (1995), Crystal Clear, Programowanie ekstremalne (1996), Adaptive Software Development, Feature Driven Development i Dynamic Systems Development Method (DSDM) (1995). Są one teraz zbiorczo określane jako metodologie Agile, po opublikowaniu Manifestu Agile w 2001 roku.

Poniżej przedstawiono zasady Manifestu Agile –

  • Osoby i interakcje – W rozwoju Agile ważna jest samoorganizacja i motywacja, podobnie jak interakcje, takie jak kolokacja i programowanie w parach.

  • Działające oprogramowanie – Demo działające oprogramowanie jest uważane za najlepszy środek komunikacji z klientami, aby zrozumieć ich wymagania, zamiast polegać tylko na dokumentacji.

  • Współpraca z klientem – Ponieważ wymagania nie mogą być zebrane w całości na początku projektu z powodu różnych czynników, Ciągła interakcja z klientem jest bardzo ważna, aby uzyskać odpowiednie wymagania dotyczące produktu.

  • Reagowanie na zmiany – zwinny rozwój skupia się na szybkim reagowaniu na zmiany i ciągłym rozwoju.

Agile kontra tradycyjne modele SDLC

Agile opiera się na oprogramowaniu adaptacyjnym metody rozwoju, podczas gdy tradycyjne modele SDLC, takie jak model kaskadowy, oparte są na podejściu predykcyjnym. Zespoły predykcyjne w tradycyjnych modelach SDLC zwykle pracują nad szczegółowym planowaniem i mają pełną prognozę dokładnych zadań i funkcji, które zostaną dostarczone w ciągu najbliższych kilku miesięcy lub w trakcie cyklu życia produktu.

Metody predykcyjne całkowicie zależą od analiza wymagań i planowanie wykonane na początku cyklu. Wszelkie zmiany, które mają zostać wprowadzone, przechodzą przez ścisłe zarządzanie zmianą i ustalanie priorytetów.

Agile stosuje podejście adaptacyjne, w którym nie ma szczegółowego planowania i istnieje jasność co do przyszłych zadań tylko w odniesieniu do tego, jakie funkcje należy opracować . Istnieje rozwój oparty na funkcjach, a zespół dynamicznie dostosowuje się do zmieniających się wymagań produktu. Produkt jest testowany bardzo często, poprzez iteracje wydania, minimalizując ryzyko poważnych awarii w przyszłości.

Interakcja z klientem jest podstawą tej metodologii Agile, a otwarta komunikacja z minimalną dokumentacją to typowe cechy Zwinne środowisko programistyczne. Zespoły zwinne ściśle ze sobą współpracują i najczęściej znajdują się w tym samym położeniu geograficznym.

Model zwinny – zalety i wady

Metody zwinne są powszechnie akceptowane w oprogramowaniu świat ostatnio. Jednak ta metoda może nie zawsze być odpowiednia dla wszystkich produktów. Oto kilka zalet i wad modelu Agile.

Zalety modelu Agile są następujące –

  • To bardzo realistyczne podejście do tworzenia oprogramowania.

  • Promuje pracę zespołową i szkolenia krzyżowe.

  • Funkcjonalność można szybko rozwinąć i zademonstrować.

  • Wymagania dotyczące zasobów są minimalne.

  • Odpowiedni do stałych lub zmieniających się wymagań

  • Dostarcza wczesne rozwiązania częściowe .

  • Dobry model dla środowisk, które stale się zmieniają.

  • Minimalne reguły, łatwa do zastosowania dokumentacja.

  • Umożliwia równoczesny rozwój i dostarczanie w ramach ogólnego zaplanowanego kontekstu.

  • Planowanie jest niewielkie lub nie jest wymagane.

  • Łatwy w zarządzaniu.

  • Daje elastyczność programistom.

Wady Model Agile jest następujący –

  • Nie nadaje się do obsługi złożonych zależności.

  • Większe ryzyko trwałości, łatwości utrzymania i rozszerzalności.

  • Ogólny plan, zwinny lider i zwinna praktyka PM to konieczność, bez której to nie zadziała.

  • Rygorystyczny zarządzanie dostawami dyktuje zakres, funkcjonalność do dostarczenia i dostosowania w celu dotrzymania terminów.

  • Zależy w dużym stopniu od interakcji z klientem, więc jeśli klient nie jest jasny, zespół może być napędzany zły kierunek.

  • Istnieje bardzo duża zależność indywidualna, ponieważ generowana jest minimalna dokumentacja.

  • Transfer technologii dla nowych członków zespołu może być dość trudne długotrwałe z powodu braku dokumentacji.

Reklamy

Write a Comment

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *