Wykłady
> Zarządzanie projektem w warunkach zmienności > Metodyki zwinne |
![]() ![]() |
3.2 Metodyki zwinne![]() Metodyki zwinne (ang. agile) przeznaczone są dla projektów, które realizowane są w szczególnie silnych warunkach zmienności. Koncentrują się one na specyficznych umiejętnościach i predyspozycjach zespołu projektowego i jego członków i unikają stosowania sztywnych ram określane postępowania i z góry narzuconych standardów charakterystycznych dla metodyk formalnych. Głównym podejście metodyk zwinnych jest ukierunkowane na wydobycie z zespołu projektowego maksymalnej wydajności jego członków oraz na osiągnięcie maksymalnego rezultatu możliwie niskimi nakładami. Podejście zwinne stosuje się wtedy, gdy projekt obejmuje stworzenie niedużego (linie kodu liczone w dziesiątkach tysięcy, czas realizacji liczony w miesiącach) systemu w środowisku o zmiennych warunkach. Manifest Wytwarzania Oprogramowania w metodykach zwinnych wprowadza cztery najważniejsze priorytety: • działające oprogramowanie zamiast wyczerpującej dokumentacji – celem projektu jest stworzenie produktu spełniającego wymagania, więc lepiej się skoncentrować na jego wytwarzaniu niż na wypełnianiu stosu dokumentacji. Ponadto dużo bogatszą i bardziej konstruktywną informację zwrotną otrzyma się od klienta, kiedy przedstawi mu się konkretne rozwiązanie do oceny, zamiast pliku kartek z wyobrażeniem, jakie się ma o przygotowywanym produkcie. Projekt musi jednak wnosić ze sobą także dokumentację, żeby w przyszłości można było naprawić ewentualne błędy, czy rozszerzyć funkcjonalność oprogramowania. Metodyki agile proponują, żeby programiści wytwarzali tzw. kod samokomentujący się. Sprowadza się to do stosowania pewnych metod, które pozwolą osobie niewtajemniczonej w szczegóły rozwiązania domyśleć się istoty jego działania i dokonać odpowiednich zmian, czy dodatków. Do metod tych należą między innymi: stosowanie opisowych nazw zmiennych i procedur oraz umieszczanie w kodzie krótkich komentarzy, wyjaśniających bardziej skomplikowane fragmenty. • indywidualności i współdziałanie zamiast procesów i narzędzi – warto rozwiązywać problemy spontanicznie i z pomocą współpracowników zamiast uruchamiać do tego procesy i stosować narzędzia określone w sztywnych zasadach. W metodykach zwinnych dużą wagę przywiązuje się do spotkań zespołu projektowego – są to najczęściej niezbyt długie (maksymalnie 15 minutowe) zebrania (ang. progress meeting), na których omawiane są postępy w poszczególnych modułach produktu. Spotkania te nie powinny zajmować dużo czsasu, jednak z uwagi na ograniczony rozmiar dokumentacji, ich regularność powinna być mocno przestrzegana, żeby kierownik projektu mógł zachować kontrolę nad jego przebiegiem. Jest to doskonałe narzędzie wymiany wiedzy bez konieczności tworzenia przy tym setek stron protokołów. • współpraca z klientem zamiast twardej realizacji kontraktu – należy zastanawiać się po pierwsze, czego klient oczekuje i jak możemy to zrealizować. Jeśli pewne funkcjonalności nie zostały jasno zapisane w kontrakcie, ale klientowi wyraźnie na nich zależy, to nie znaczy automatycznie, że ich wprowadzenie wymaga renegocjacji kontraktu i obciążenia klienta kosztami zmian. Należy zawsze być elastycznym, aby dopasować się do oczekiwań klienta, który usatysfakcjonowany jest także bardziej skłonny iść kierownikowi projektu na ustępstwa i chętniej akceptuje kolejne elementy produktu. Jednocześnie ważne jest także zwrócenie uwagi na to, czy osoba wyznaczona przez klienta, rzeczywiście jest kompetentna do współpracy. Jeśli jest to ktoś, kto akurat ma najmniej obowiązków, wtedy jego komentarze nie wnoszą wiele, a kierownik projektu ma iluzję dobrej komunikacji i zadowolenia klienta, jednocześnie realizując produkt, który nie spełnia faktycznych wymagań. • reakcja na zmiany zamiast trzymania się planu – należy oczekiwać zmian – to normalne. Plan to tylko opis stanu aktualnego, który nie musi długo trwać. Należy go modyfikować, aby sprostać wymaganiom zmieniającym się w czasie. Postulat ten nawiązuje do postulatu o komunikacji i współdziałania członków zespołu projektowego – częste narady i omawianie spraw związanych z postępami prac, pozwala na wczesne zidentyfikowanie potencjalnych czynników ryzyka i natychmiastowe wypracowanie działań mających na celu unieszkodliwienie zagrożeń. Podsumowując należy zauważyć, że metodyki zwinne koncentrują się na szybkiej adaptacji do zmieniających się warunków – nie starają się przewidzieć i przygotować do wszystkich możliwych ewentualności, jakie mogą wystąpić w trakcie realizowania projektu. Przewidują częste i ciągłe iteracje cykli wytwarzania oprogramowania, o których może wypowiedzieć się klient i dostarczyć informacji zwrotnej. Ponadto w trakcie realizacji projektu, członkowie zespołu projektowego mają stały (osobisty, telefoniczny, mailowy) kontakt z klientem, który rozwiązuje niejasne kwestie w definicji powstającego produktu. Podejście zwinne zaleca zorganizowanie wygodnego miejsca do pracy dla wykonawców, zapewniającego spokojną i twórczą atmosferę. Zmniejszenie ilości dokumentacji na rzecz bezpośredniej dyskusji i narady. Przejdź dalej ![]() |
|
![]() Wykłady > Zarządzanie projektem w warunkach zmienności > Metodyki zwinne |