The kluczowa różnica między SDLC a metodologią Agile jest to SDLC to proces dzielenia prac programistycznych na odrębne fazy w celu zaprojektowania i opracowania wysokiej jakości oprogramowania, podczas gdy Agile Methodology to model SDLC. Metodologia zwinna to połączenie iteracyjnych i przyrostowych modeli procesów, które koncentrują się na możliwości dostosowania procesu i zadowoleniu klienta poprzez szybką dostawę działającego oprogramowania.
1. Przegląd i kluczowa różnica
2. Co to jest SDLC
3. Co to jest metodologia zwinna
4. Związek między SDLC a metodologią Agile
5. Porównanie obok siebie - SDLC vs. metodologia zwinna w formie tabelarycznej
6. Podsumowanie
SDLC oznacza Cykl życia oprogramowania. Podczas tworzenia oprogramowania należy przestrzegać pewnych faz. Każda organizacja opracowująca oprogramowanie stosuje SDLC do projektu oprogramowania. SDLC ma różne fazy. Podstawowe zrozumienie problemu jest określone na etapie planowania. Na tym etapie identyfikowane są również zagrożenia związane z projektem, trudności techniczne, zasoby, wysiłki rozwojowe.
W fazie wymagań pierwszym działaniem jest zebranie i analiza wymagań. Pozyskiwanie informacji od klientów, spotykanie się z menedżerami wyższego szczebla i uzyskiwanie szczegółowych informacji o sprzedaży, a marketing odbywa się podczas zbierania wymagań. Zebrane wymagania powinny być odpowiednio udokumentowane. Ten dokument jest znany jako Specyfikacja wymagań oprogramowania (SRS). Zawiera wymagania dotyczące produktu, które należy zaprojektować i opracować podczas cyklu życia projektu.
Projekt oprogramowania pochodzi z SRS. Więcej niż jedno podejście do projektowania architektury produktu zostało zaproponowane i udokumentowane w Specyfikacja dokumentu projektowego (DDS). Na tym etapie projektowane są wszystkie moduły architektoniczne, reprezentacja przepływu danych z modułami zewnętrznymi itp.
Podczas realizacji projekt jest realizowany przy użyciu odpowiedniego języka programowania. Do pisania i testowania programów można używać różnych narzędzi programistycznych, takich jak kompilatory, interpretatory, edytory kodu, IDE i debuggery. Język programowania można wybrać zgodnie z aplikacją. Testy jednostkowe opracowanego modułu są wykonywane w tej fazie.
Testowanie to proces sprawdzania i sprawdzania, czy program działa zgodnie z oczekiwaniami. Służy do sprawdzenia, czy ostateczny projekt spełnił oczekiwane wymagania. Testowanie obejmuje testowanie integracji, testowanie systemu itp. Testowanie integracji polega na przeprowadzeniu testów między dwoma modułami. Testowanie systemu jest kompletnym testowaniem projektu.
Rysunek 01: SDLC
Wreszcie produkt został wprowadzony na rynek. W zależności od opinii klientów do produktu można dodać nowe funkcje. Utrzymanie i wymagane usługi są świadczone obecnym klientom. To są główne fazy SDLC.
Podczas procesu tworzenia oprogramowania należy przestrzegać modelu cyklu życia oprogramowania. Te modele są znane jako Model procesu rozwoju oprogramowania. Każdy proces wykonuje określoną liczbę kroków unikalnych dla swojego typu, aby pomyślnie ukończyć projekt oprogramowania. Niektóre przykłady modeli SDLC to model wodospadu, model iteracyjny, model spiralny, model v, model prototypowy, szybki rozwój aplikacji itp..
Metodologia zwinna to także model SDLC. Jest to połączenie iteracyjnych i przyrostowych modeli procesów. Ten model pomaga dostosować się do zmian wymagań. W tym modelu projekt jest podzielony na kilka modułów. Załóżmy, że projekt jest podzielony na trzy moduły jako A, B i C. Pierwszy moduł A przechodzi przez planowanie, gromadzenie wymagań i analizę, projektowanie, wdrażanie i testowanie. Po zakończeniu moduł B uruchamia się. Przechodzi również przez tę samą fazę, co moduł A. Po zakończeniu B moduł C uruchamia się. Pod koniec iteracji klientowi może zostać dostarczony działający moduł.
Agile ma wiele zalet. W tradycyjnym modelu wodospadu po zdefiniowaniu wymagań nie można ich zmienić. Ale w Agile wymagania można zmienić. Istnieje również większa współpraca między deweloperem a klientem. Usprawnia pracę zespołową i ułatwia zarządzanie projektem. Ogólnie rzecz biorąc, Agile jest popularnym modelem SDLC ze względu na jego elastyczność i adaptację. Może nie nadawać się do złożonego projektu. Inne wady polegają na tym, że klient może zawsze zmieniać wymagania i trzeba mieć zwinnego lidera, który poprowadzi projekt.
SDLC kontra metodologia zwinna | |
SDLC to proces dzielenia prac programistycznych na odrębne fazy w celu poprawy projektowania, zarządzania produktem i zarządzania projektami. | Metodologia zwinna - podejście programistyczne, w którym wymagania i rozwiązania ewoluują dzięki wspólnemu wysiłkowi zespołów samoorganizujących się i obejmujących wiele funkcji oraz ich użytkowników końcowych. |
Stosowanie | |
SDLC służy do organizowania zarządzania pracami programistycznymi. | Zwinność służy do poprawy elastyczności i dostosowania się do zmian wymagań projektu. |
W tym artykule omówiono różnicę między SDLC i Agile. Różnica między SDLC a metodologią zwinną polega na tym, że SDLC to proces dzielenia prac programistycznych na odrębną fazę w celu zaprojektowania i opracowania wysokiej jakości oprogramowania, podczas gdy metodologia zwinna to model SDLC.
1. „Proces tworzenia oprogramowania”. Wikipedia, Wikimedia Foundation, 28 marca 2018. Dostępne tutaj
2. „Model SDLC Agile”. Www.tutorialspoint.com, Tutorials Point, 8 stycznia 2018 r. Dostępne tutaj