Zwinne programowanie, czyli o metodologii Agile
Termin Agile Software Development jest używany w odniesieniu do metodologii wytwarzania oprogramowania umożliwiających jak najszybszą odpowiedź na zmienne potrzeby rynku. Termin ten upowszechnił się po 2001 r.
Zwinne zespoły wyróżniają trzy poziomy planowania: całość procesu wytwórczego - iteracja - pojedynczy dzień. Każdy kolejny poziom opisuje coraz krótszy okres czasu na coraz niższym poziomie abstrakcji. Planowanie, podobnie jak w przypadku projektowania architektury rozłożone jest w czasie. Iteracyjne podejście do planowania następujących po sobie cykli wytwórczych umożliwia zespołowi stosunkowo szybką odpowiedź na zmieniające się warunki zewnętrzne (potrzeby rynku, nowe technologie, itp. ). Im krótsze iteracje, tym szybciej zespół ma możliwość uwzględnienia nowych faktów w planowaniu (zasadą jest, że iteracji nie przerywamy w połowie).
Podział planowania na trzy poziomy zapewnia dodatkowo dobrą kontrolę nad aktualnym i przewidywanym stanem projektu. Planowanie projektu w skrócie można opisać jako posortowanie wymagań według rozmiaru i ważności oraz przypisanie ich do iteracji. Planowanie iteracji to analiza i rozbicie wymagań na zadania. Planowanie dnia to zobowiązywanie się członków zespołu do wykonania zadania z listy zadań w iteracji. Postęp pracy zmierzony po każdym dniu daje nam wiedzę o stanie iteracji, postęp pracy po każdej iteracji daje nam wiedzę o stanie projektu. Wraz z upływem czasu zespół z coraz większą dokładnością jest w stanie określić datę wypuszczenia produktu na rynek. Godzimy się z faktem, że w początkowej fazie data określona jest z dokładnością do kwartału, po upływie kilku iteracji, zespół jest w stanie zapewnić dostarczenie produktu w określonym miesiącu, by po następnych kilku iteracjach określić datę z dokładnością do dnia.
Podsumowując, zwinne metodologie wytwarzania oprogramowania charakteryzują się bezpośrednią i otwartą komunikacją w zespole, wspólnym podejmowaniem decyzji oraz naciskiem na ciągły kontakt z klientem
Najbardziej popularne odmiany zwinnych metodologii to:
- SCRUM
- Extreme Programming (XP)
- Feature Driven Development (FDD)
- Lean Software Development
- Rational Unified Process
- Crystal
- Dynamic Systems Development Method (DSDM)
Łukasz Rycharski jest testerem w Krakowskim Laboratorium Oprogramowania. Pracując w wielku projektach w Labie miał możliwość pomagać przy wdrażaniu podejścia Agile w zespołach przechodzących na tą metodologię. Obecnie, Łukasz pracuje w projekcie Tivoli Asset Dependency Discovery.
Więcej o narzędziach IBM i programowaniu na serwisie My Developer Works.
Oceń artykuł
Komentarze (3)
Sam (niepoprawny!) tytuł artykułu skutecznie zniechęca do czytania jego treści.
Genialne jest zestawienie słów: "... nie mamy ani aktualnej dokumentacji ani działającego kodu. Więcej o narzędziach IBM i programowaniu na serwisie My Developer Works. " Nic dodać, nic ująć (brałem udział w takich projektach z wykorzystaniem narzędzi IBM)
"...zwinne metodologie..." -> Drogi Autorze, metodologia to nauka o różnych metodykach...powinno być "zwinne metodyki"
Najpopularniejsze
- Pierwsze w Polsce testy transmisji danych z...
- Magdalena Gaj została Przewodniczącą Rady...
- Asseco wątpi w obiektywny wybór dostawcy w...
- Raport Państwo 2.0, czyli nowa wizja...
- Sygnity: wezwanie Asseco i sezonowość...
- Ogromna liczba komputerów Mac wciąż...
- Nasza Klasa uruchomiła inkubator...
- Google prezentuje okulary z Augmented Reality
- Oracle daje klientom bezpłatny system do...
- CBA kontroluje przetargi związane z CEPiK
Rekomendacje
Serwisy IDG - Warunki obsługi - Kontakt - Redakcja - Regulamin - O nas - Polityka prywatności - Serwis zgodny z ASME
Reklama - Licencjonowanie treści - Prenumerata: Computerworld, Networld, PC World
Computerworld Polska i Computerworld Polska online są znakami towarowymi IDG Poland SA.
© Copyright 2012 International Data Group Poland S.A. 04-204 Warszawa ul. Jordanowska 12 tel.(+4822)321-78-00 fax(+4822)321-78-88






