Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Agile Development Zwinne tworzenie systemów Szymon Bohdanowicz.

Podobne prezentacje


Prezentacja na temat: "Agile Development Zwinne tworzenie systemów Szymon Bohdanowicz."— Zapis prezentacji:

1 Agile Development Zwinne tworzenie systemów Szymon Bohdanowicz

2 Świat systemów IT ŚWIAT SPEKTAKULARNYCH PORAŻEK % systemów odnosi porażkę zanim uda się je ukończyć Połowa systemów przekracza swój budżet ponad dwukrotnie Zawalone projekty softwarowe kosztują corocznie ponad 100 miliardów USD(tylko w USA) 67% projektów mających na celu zarządzane kontaktami pomiędzy deweloperami i klientami kończy się klapą

3 Przykład NHS National Programme for IT – system dla służby zdrowia w Wielkiej Brytanii Początkowy budżet 6 miliardów funtów – zawieszony gdy pochłonął 12,7 miliarda W momencie zawieszenia opóźniony o ok. 5 lat Spotkał się z powszechną krytyką wszystkich grup użytkowników Na końcu oceniony jako niepotrzebny

4 Data ukończenia Change! Nasza wstępna analiza była błędna W czasie projektowania nauczyliśmy się nowych rzeczy Chcemy poprawionego systemu Granger – wielki szef Edwards - Klient Nie zdarzają się sytuację, których wymogi dla systemu nie ulegają zmianie w czasie jego tworzenia Typowy system wymaga przynajmniej 25% zmiany względem początkowych wymagań Duże i średnie projekty wymagają 25-35% zmiany względem początkowych wymagań Krzywa uczenia się Wycofanie się ze wstępnej specyfikacji Nauka powoduje zmianę

5 Metodologie Agile są nastawione na radzenia sobie ze ZMIANAMI Umiejętność tą uzyskują dzięki iteratywności i inkrementalności

6 6 zasad Agile Development 1.Klient sporządza listę wymagań i określa ich priorytety 2.Regularne dostarczanie działających modułów według ustalonego planu 3.Klient może wdrożyć software w każdym momencie

7 6 zasad Agile Development cd… 4.Klient może usunąć, dodać bądź zmienić wymagania w dowolnym momencie 5.Należy dotrzymywać zobowiązań niezależnie od zmian 6.Można zatrzymać rozwój w dowolnym momencie przy jednoczesnym korzystaniu z dotychczasowych osiągnięć

8 Tradycyjny model - waterfall Analiza Specyfikacja Projekt Implementacja Testowanie i wdrożenia Działanie i serwis

9 Tradycyjny model - waterfall Krzywa kosztu zmiany Boehma WymaganiaAnaliza Projekt ImplementacjaTesty 1. Próba zapobiegania zmianom 2. Poznajemy własne błędy w trakcie trwania projektu 3. Poprawki są wprowadzane w najdroższym momencie 4. Okres testów nieznany, koszty rosną 5. Konieczna zmiana terminów bądź opóźnienia 6. Zamiast testów poprawki

10 Zaleta Agile nr 1: Wiele zmian jest za darmo Wszystkie wymagania mają swoje priorytety Backlog W momencie gdy pracujemy nad tym inkrementem …można bezkosztowo zmieniać wymagania pozostałym

11 1.Tradycyjna specyfikacja wymagań jest zgadywanką… jest błędna 1.Wiele funkcjonalności jest niepotrzebnych ale wciąż implementowanych 2.Te bezwartościowe funkcjonalności na dole backlogu ale i tak są implementowane wg metody waterfall 3.Metodyka zwinna daje lepsze rezultaty 2.YAGNI 1.Twórz na potrzeby obecne a nie na przyszłość Zaleta Agile nr 2: Uniknięcie nadprodukcji

12 Średni koszt zmiany Increment 1Increment 2Increment 3Increment 4Increment 5 Bardzo mała ilość zmian krytycznych Większość zmian 1.Metodyka zwinna wymusza pojawienie się zmian krytycznych na początku 2.Lepiej zawalić projekt na początku zanim pieniądze zostaną wydane 3.Większość zmian nie jest kosztowna Zaleta Agile nr 3: Zmiany krytyczne można przetrwać

13 Wszystkie wymagania mają swoje priorytety Backlog Im wcześniej wykryjemy błąd tym łatwiej i taniej go naprawić Zapobieganie błędom najtańsze i najlepsze ale … 1.Klient jest niemalże zawsze dostępny 2.Stworzenie i zautomatyzowanie testowania przed kodowanie 3.Testy automatyczne pozwalają na szybkie wykrywanie błędów wstecznych 4.Ciągła integracja oprogramowania przyczynia się do szybszego wykrywania błędów 5.Programowanie w parach pozwala na szybsze wykrywanie błędów Zaleta Agile nr 4:Zapobieganie i przyśpieszanie poprawek

14 Wszystkie wymagania mają swoje priorytety Backlog Wszystkie wymagania mają swoje priorytety 1.Zwinna metodyka tworzy działające oprogramowanie na innym działającym oprogramowaniu, które jest zbudowane na innym działającym oprogramowaniu, które… 2.Każdy inkrement jest a)Wolny od błędów– możliwy do wdrożenia b)Dobrze zaprojektowany 3.Refactoring czyni kod czystym 4.Testy automatyczne działają jak lina bezpieczeństwa Dobry projekt = łatwy do zmiany = tani do zmiany Zaleta Agile nr 5:Projekt może być łatwo zmieniony

15 Zysk Agile vs Zysk Waterfall


Pobierz ppt "Agile Development Zwinne tworzenie systemów Szymon Bohdanowicz."

Podobne prezentacje


Reklamy Google