Extreme Programming Leksykon kieszonkowy.pdf

(439 KB) Pobierz
C:\Andrzej\PDF\ABC nagrywania p³yt CD\1 strona.cdr
IDZ DO
PRZYK£ADOW Y ROZDZIA£
Extreme Programming.
SPIS TRECI
Leksykon kieszonkowy
KATALOG KSI¥¯EK
Autor: chromatic
T³umaczenie: Rafa³ Joñca
ISBN: 83-7361-343-9
Format: B5, stron: 104
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Wydajne programowanie (ang. Extreme Programming, XP) to nowe podejcie
do tworzenia oprogramowania oparte o najlepsze z technik ze szczególnym
uwzglêdnieniem prostoty i pracy zespo³owej. XP to ci¹g³e testowanie i przegl¹danie
kodu oraz znaczne zaanga¿owanie klienta w proces tworzenia aplikacji. Choæ metody
te przemawiaj¹ do programistów, ich praktykowanie wymaga cierpliwoci i jest nie lada
wyzwaniem.
Niniejsza ksi¹¿ka wyjania podstawowe techniki w ujêciu ca³ociowym. Niezale¿nie
od tego, czy jeste programist¹, klientem lub mened¿erem; czy zaczynasz projekt od
pocz¹tku lub chcesz poprawiæ ju¿ istniej¹cy, Extreme Programming z pewnoci¹ mo¿e
Ciê wiele nauczyæ. Warto mieæ satysfakcjê z pisania oprogramowania.
W leksykonie omówiono:
• Techniki XP
• Elementy XP
• Zdarzenia w XP
• Kodowanie w stylu XP
• Wdro¿enie XP
Zamiast zag³êbiaæ siê w setkach stron na temat Extreme Programming, sprawd jak
wiele informacji uda³o siê zmieciæ w tej ma³ej ksi¹¿eczce. Bêdzie Ci ona towarzyszyæ
i s³u¿yæ pomoc¹ w ca³ym procesie tworzenia aplikacji.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
329236496.001.png 329236496.002.png 329236496.003.png
Spis treci
Przedmowa.....................................................................................5
Wstp...............................................................................................7
Rozdział 1. Dlaczego extreme programming?......................12
Kto troszczy si o proces? .............................................................................. 13
Równanie XP..................................................................................................... 14
Wartoci XP ....................................................................................................... 18
Komunikacja.............................................................................................. 18
Odpowiedzi na pytania .......................................................................... 19
Prostota ....................................................................................................... 21
Odwaga ...................................................................................................... 22
Zakładanie dostatecznoci rozwi(zania...................................................... 22
Wystarczaj(ca ilo* czasu ....................................................................... 23
Wystarczaj(ca ilo* zasobów ................................................................. 23
Stały koszt zmian...................................................................................... 24
Wydajno* twórcy.................................................................................... 25
Dowolno* eksperymentowania........................................................... 26
Rozdział 2. Techniki XP ...........................................................28
Techniki kodowania ........................................................................................ 29
1. technika kodowania: proste projektowanie i kodowanie............ 29
2. technika kodowania: bezlitosna refaktoryzacja ............................. 32
3. technika kodowania: opracowanie standardów kodowania...... 35
4. technika kodowania: stosowanie wspólnego słownictwa .......... 37
Techniki tworzenia .......................................................................................... 39
1. technika tworzenia: kreowanie z nakierowaniem na testy ......... 39
2. technika tworzenia: programowanie w parach............................. 44
3. technika tworzenia: stosowanie zasady kolektywnej
własnoci kodu.................................................................................. 47
4. technika tworzenia: ci(gła integracja ............................................... 49
Techniki biznesowe ......................................................................................... 51
1. technika biznesowa: klient jest członkiem zespołu....................... 52
2. technika biznesowa: zabawa w planowanie .................................. 54
3. technika biznesowa: regularne wydania......................................... 57
4. technika biznesowa: praca we wzgldnym spokoju .................... 59
Spis treci
3
Rozdział 3. Zdarzenia XP ........................................................62
Planowanie iteracji........................................................................................... 62
Opisy funkcji i zadania............................................................................ 62
Oszacowanie czasu pracy i harmonogramowanie ........................... 63
Pierwsza iteracja ....................................................................................... 66
Iteracja ................................................................................................................ 67
Wydanie ............................................................................................................. 69
Rozdział 4. Elementy XP..........................................................71
Karty funkcji...................................................................................................... 71
Karty zada6 ....................................................................................................... 73
Pokój wojenny .................................................................................................. 74
Rozdział 5. Role w XP..............................................................77
Klient .................................................................................................................. 77
Prawa klienta............................................................................................. 78
Odpowiedzialno* klienta ...................................................................... 79
Programista ....................................................................................................... 80
Prawa programisty .................................................................................. 81
Odpowiedzialno* programisty............................................................ 81
Dodatkowe role ................................................................................................ 82
Organizator................................................................................................ 82
Trener.......................................................................................................... 82
Rozdział 6. Kodowanie, styl XP ............................................84
Wykonanie najprostszej rzeczy, która bdzie działała ............................ 84
Nie bdziemy tego potrzebowali ................................................................. 87
Raz i tylko raz ................................................................................................... 88
Rozdział 7. Dostosowanie do XP ..........................................90
Zanim zaczniemy............................................................................................. 91
Eliminacja strachu i praca razem .................................................................. 91
Uzyskiwanie informacji .................................................................................. 93
Doł(czenie mened<erów i klientów............................................................. 95
Gdy ju< stosujemy techniki............................................................................ 98
Rozdział 8. Dodatkowe zasoby..............................................99
Witryny na temat XP....................................................................................... 99
Skorowidz .............................................................................103
4
Extreme Programming. Leksykon kieszonkowy
Rozdział 5. Role w XP
Kady projekt XP zawiera kilka rónych ról — kada z nich ma
własne prawa i zakres odpowiedzialnoci. XP stara si polepszy
komunikacj midzy klientem a programist", dziki wyra$nemu
rozdzieleniu zada% stoj"cych przed tymi dwoma osobami. Jeli
zadanie ma zosta wykonane właciwe, trzeba rozmawia z drug"
grup".
XP daje programistom autorytet podejmowania decyzji technicz-
nych, gdy dobrze si na nich znaj". Klient ma za zadanie po-
dejmowa decyzje biznesowe. Obydwie dziedziny wpływaj" na
siebie. Dokładne rozdzielenie zada% zwiksza szans odniesie-
nia sukcesu.
Klient
Klient steruje projektem. Definiuje go i okrela jego cele. Im do-
kładniejsza jest jego praca i czstszy udział w zebraniach, tym
wiksze prawdopodobie%stwo odniesienia sukcesu.
Klient podejmuje decyzje biznesowe. Odpowiada za nie, gdy
jest obeznany z tym tematem. Jego celem jest okrelenie celów
projektu (funkcji programu). Musi odpowiedzie na pytania: „Co
powinna robi dana funkcja?”, „W jaki sposób poznamy, i jest
gotowa?”, „Ile czasu moemy nad ni" spdzi?”, „Kiedy naley
j" zaimplementowa?”.
Klient współpracuje z programistami. Pisze karty funkcji, wyja-
niaj"ce zasad działania funkcji, i tworzy harmonogram. Odpo-
wiada na pytanie co? . Uczestniczy w planowaniu i wybiera funkcje
wprowadzane w nastpnej iteracji. Odpowiada na pytania kiedy?
i ile? . Tworzy i wykonuje teksty akceptacyjne (przy pomocy pro-
gramisty), aby sprawdzi, czy funkcja jest ju gotowa. Odpowiada
na pytanie czy gotowe? .
Rozdział 5. Role w XP
77
Klient reprezentuje uytkownika ko%cowego. W projekcie pro-
wadzonym wewn"trz funkcji moe nawet by ko%cowym uyt-
kownikiem. W innych sytuacjach słuy jako porednik. Odpowiada
za identyfikacj potrzeb z punktu widzenia uytkownika. Pro-
gramici troszcz" si o kwestie techniczne.
Klient odpowiada te za stron finansow" projektu. D"y do mak-
symalizacji zysku. W dowolnym momencie oprogramowanie po-
winno zawiera najbardziej istotne funkcje, które zostały dodane
do harmonogramu zgodnie z posiadan" wiedz".
Klient w technikach XP korzysta z kilku $ródeł informacji. Musi
rozumie zagadnienia biznesowe, dotycz"ce projektu, nawet jeli
te zmieniaj" si wraz z upływem czasu. Czy funkcja jest teraz
mniej lub bardziej wana ni wtedy, gdy była definiowana? Czy
funkcja moe zosta opó$niona, zaniechana lub uproszczona? Klient
musi by w stanie w dowolnym momencie oceni projekt. Które
funkcje s" gotowe? W jakim stopniu spełniaj" one załoenia?
Z drugiej strony klient musi zna techniczne zalenoci, przede
wszystkim ich wpływ na warto i ryzyko wprowadzenia funkcji.
Czy lepiej doda do harmonogramu własn" funkcj, czy moe
skorzysta z propozycji programisty?
XP zawsze traktuje klienta jako jedn" osob. Jeli jest tylko po-
rednikiem z klientami lub przedstawicielem inwestora, musi
mówi jednym głosem. Przyjmuje rol autorytetu, który ponosi
odpowiedzialno za swoje decyzje.
Prawa klienta
XP okrela kilka praw klienta.
Maksymalizacja zysków , aby w harmonogramie znalazły si
zawsze najpotrzebniejsze funkcje (patrz „2. technika bizne-
sowa: zabawa w planowanie” z rozdziału 2.).
78
Extreme Programming. Leksykon kieszonkowy
Zgłoś jeśli naruszono regulamin