• Nie Znaleziono Wyników

eXtreme Programming

N/A
N/A
Protected

Academic year: 2021

Share "eXtreme Programming"

Copied!
20
0
0

Pełen tekst

(1)

eXtreme Programming

Tomasz Juranek

(2)

Czym jest XP?

XP jest konkretną koncepcją określającą metodologię tworzenia wysokiej jakości oprogramowani, bez uciekania się do jakichkolwiek czynności zbędnych.

(3)

Zasady

Współpraca z klientami

Plan

Krótkie zebrania

Najpierw testy

Prostota

Programowanie parami

(4)

Zasady cd.

Kolektywne kontrolowanie kodu

Nieustanna integracja

Refaktoryzacja

Udostępnianie rezultatów małymi fragmentami

Bez przemęczania się

Przygotowanie na zmiany

(5)

Gracze

Zespół programistów

Zespół klientów

(6)

Zespół klientów

Opowiadacze – storytellers

Akceptanci – acceptors

Posiadacze złota – gold donor

Planiści

Wielki Szef

(7)

Zespół programistów

Trener – coach

Tropiciel – tracker

Negocjator

Architekt

(8)

Fazy projektu

XP odnosi się do faz:

Planowania

Projektowania

Programowania

(9)

Planowanie

Historie użytkownika – user stories

1 Maksymalizacja/przywracanie okna potomnego

Po naciśnięciu przycisku „Maksymalizuj” w którymkolwiek oknie wewnętrznym w stosunku do ramy głównej, okno powinno

wypełnić cały obszar kliencki tej ramy. Przycisk powinien zmienić swój tytuł na „Przywróć”. Naciśnięcie przycisku „Przywróć”

powinno przywrócić rozmiary i pozycje okna sprzed maksymalizacji.

(10)

Planowanie cd.

use cases

Sposób użycia dla wypożyczalni kaset video.

Poniższy sposób użycia definiuje optymalną ścieżkę klienta w zautomatyzowanym (bazującym na WWW) scenariuszu

działania wypożyczalni kaset video.

Nazwa sposobu użycia: wypożyczalnia video.

Unikatowy numer sposobu użycia: VS-01.

Główny aktor: klient.

Aktor drugoplanowy: brak.

(11)

Krótki opis: niniejszy sposób użycia opisuje interakcje

występujące podczas wypożyczania kaset video za pomocą WWW.

Wyzwalacz: klient wybiera tytuł z katalogu.

Warunki wstępne:

Klient musi mieć aktywne konto

Klient musi spełniać ograniczenia wiekowe związane z danym tytułem

Wszystkie pozycje w katalogu identyfikowane są na podstawie

(12)

Przepływ zdarzeń:

1. Klient przegląda katalog i wybiera tytuł.

2. Jeżeli tytuł jest dostępny, system wybiera kasetę związaną ze wskazanym tytułem i blokuje ją dla innych użytkowników.

3. Gdy klient zakończył wybieranie tytułów, składa zamówienie. Zamówienie jest uwierzytelniane, po pomyślnym uwierzytelnieniu aktualizowane jest konto klienta – koszt wypożyczenia odejmowany jest od stanu konta. Zablokowane kasety rejestrowane są jako wypożyczone.

4. System potwierdza wykonanie transakcji.

Warunki końcowe:

Dla konta tworzone jest nowe zamówienie

Ewidencja kaset jest modyfikowana tak, by uwzględnić wypożyczone kasety

System obciąża konto klienta i przekazuje pobraną kwotę na konto właściciela wypożyczalni

(13)

Alternatywne przepływy sterowania i wyjątki:

Tytuł jest niedostępny, klient musi dokonać innego wyboru

Konto użytkownika zostało zablokowane z powodu zaległych płatności – zobacz sposób użycia „Zaległości”

Uwierzytelnienie zakończyło się negatywnie, z powodu błędnej karty kredytowej; system monituje o włożenie właściwej karty.

(14)

Planowanie cd.

Planowanie etapów

Planowanie iteracji

(15)
(16)

Interfejs użytkownika jest jak arkusz kalkulacyjny – wyświetla on wyniki wszystkich zapytań w formie

tabelarycznej. Ponadto, tak jak arkusz kalkulacyjny, musi on posiadać zdolność importu danych w formie z

przecinkiem rozdzielającym.

Projektowanie

Prostota

System metafor

Karta wizji

(17)

Programowanie

Klient zawsze obecny

Kodowanie zgodnie ze standardami

Najpierw testowanie

Programowanie w parach

Częste integrowanie kodu

Optymalizacje na końcu

(18)

Po co testować

Wiesz, że system działa

Wiesz, że pracujesz na stabilnym kodzie bazowym

Wiesz, że kod stworzony dotychczas nie zawiera żadnych błędów

(19)

Kiedy testujemy

Przed refaktoryzacją - upewnia że system pierwotnej postaci funkcjonuje bezbłędnie

Po refaktoryzacji – upewnia, że

refaktoryzacja nie wprowadziła żadnych zmian

Po zaimplementowaniu nowego zadania

(20)

KONIEC

Cytaty

Powiązane dokumenty

Jeśli żadna orbita nie jest jednoelementowa, to rozmiar każdej jest podzielny przez p, zatem i |M| jest podzielna przez p. Zamiast grafów można podobnie analizować

Jeśli więc ograniczymy ją do zbiorów, które spełniają względem niej warunek Carathéodory’ego, dostaniemy miarę nazywaną dwuwymiarową miarą Lebesgue’a – i to jest

Dodawanie jest działaniem dwuargumentowym, w jednym kroku umiemy dodać tylko dwie liczby, więc aby dodać nieskończenie wiele liczb, trzeba by wykonać nieskończenie wiele kroków,

przykładem jest relacja koloru zdefiniowana na zbiorze wszystkich samochodów, gdzie dwa samochody są w tej relacji, jeśli są tego samego koloru.. Jeszcze inny przykład to

Spoglądając z różnych stron na przykład na boisko piłkarskie, możemy stwierdzić, że raz wydaje nam się bliżej nieokreślonym czworokątem, raz trapezem, a z lotu ptaka

Następujące przestrzenie metryczne z metryką prostej euklidesowej są spójne dla dowolnych a, b ∈ R: odcinek otwarty (a, b), odcinek domknięty [a, b], domknięty jednostronnie [a,

nierozsądnie jest ustawić się dziobem żaglówki w stronę wiatru – wtedy na pewno nie popłyniemy we właściwą stronę – ale jak pokazuje teoria (i praktyka), rozwiązaniem

W przestrzeni dyskretnej w szczególności każdy jednopunktowy podzbiór jest otwarty – dla każdego punktu możemy więc znaleźć taką kulę, że nie ma w niej punktów innych niż