Head First Software Development Edycja polska(1).pdf

(5287 KB) Pobierz
Head First Software Development. Edycja polska
Head First Software
Development.
Edycja polska
Autor: Dan Pilone, Russ Miles
T‡umaczenie: Tomasz Walczak
ISBN: 978-83-246-1547-6
Software Development
Format: 200x230, stron: 472
Opanuj niezwykĀĴ sztukķ wytwarzania oprogramowania!
W jaki sposb zadowoli klienta?
Jak wygl„da proces wytwarzania oprogramowania?
Jakie pu‡apki czekaj„ na Ciebie?
Proces wytwarzania oprogramowania ju¿ sam opis sugeruje trudnoci. I rzeczywicie
jest to proces niezwykle z‡o¿ony. Od samego pocz„tku trafiamy na kwestie takie,
jak analiza potrzeb klienta i zebranie jego wymagaæ. Z ka¿dym krokiem wszystko
komplikuje siŒ jeszcze bardziej Konieczna jest implementacja poszczeglnych
wymagaæ klienta, testowanie tych rozwi„zaæ, korekta znalezionych b‡Œdw. Na to
wszystko nak‡ada siŒ jeszcze konieczno tworzenia r¿nych wersji rozwi„zaæ
i zmienny nastrj klienta. Jak sobie z tym wszystkim poradzi? Jak bezbolenie
i skutecznie przej przez ca‡y ten proces?
Tylko bez obaw! Oto podrŒcznik, ktry dziŒki innowacyjnym metodom przekazywania
wiedzy sprawi, ¿e szybko zrozumiesz proces wytwarzania oprogramowania i nauczysz
siŒ g‡adko pod„¿a jego wyboist„ cie¿k„. Autorzy ksi„¿ki Head First Software
Development. Edycja polska Dan i Russ poka¿„ Ci, w jaki sposb zadowoli klienta
i zebra od niego wymagania oraz okreli jego potrzeby. Dowiesz siŒ, jak zapanowa
nad poszczeglnymi wersjami Twojego projektu. Nauczysz siŒ prowadzi testy i usuwa
b‡Œdy. ZdobŒdziesz informacje dotycz„ce wytwarzania oprogramowania sterowanego
testami, a na koniec zobaczysz, jak taki proces wygl„da w rzeczywistoci. Wszystkie
te informacje przedstawione zosta‡y na licznych ilustracjach, co wydatnie u‡atwia
przyswajanie wiedzy, dodatkowo przekazanej przystŒpnym i pe‡nym humoru jŒzykiem.
Po lekturze tego podrŒcznika nawet laik bŒdzie w stanie zarz„dza takim procesem!
Zbieranie wymagaæ
Planowanie projektu
Kontrola wersji
Wytwarzanie sterowane testami
Testy integracyjne
Usuwanie b‡Œdw
Tworzenie oprogramowania? Nic prostszego!!!
400252827.017.png 400252827.018.png
Spis treści (skrócony)
Wprowadzenie 25
1 Doskonały rozwó­ oprogramowania. Zapewnianie zadowolenia klientów 37
2 Zbieranie wymagań. Określanie potrzeb klientów 63
3 Planowanie pro­ektu. Planowanie z myślą o sukcesie 101
4 Opowieści użytkownika i zadania. Przystępowanie do prawdziwej pracy 139
5 Wystarcza­ąco dobry pro­ekt. Tworzenie oprogramowania
na podstawie doskonałych projektów
179
6
Kontrola wers­i. Programowanie defensywne
205
7
Testy i ciągła integrac­a. Pojawiają się problemy
263
8
Wytwarzanie sterowane testami. Zapewnianie poprawności kodu
301
9
Końcówka iterac­i. Wszystkie elementy łączą się ze sobą…
341
10
Następna iterac­a. Jeśli nie jest zepsute… i tak lepiej to naprawić
371
11
Błędy. Profesjonalne usuwanie błędów
403
12
Rzeczywisty świat. Proces w praktyce
435
Dodatek A Pozostałości. Pięć najważniejszych tematów (których nie poruszyliśmy)
449
Dodatek B Techniki i zasady. Narzędzia dla doświadczonych programistów
459
Skorowidz
465
Spis treści (szczegółowy)
Wprowadzenie
Twój mózg a rozwój oprogramowania. Próbujesz nauczyć się czegoś, jednak mózg próbuje
powiedzieć, że to, czego się uczysz, nie jest istotne : „Lepiej umieścić w pamięci ważniejsze informacje,
na przykład o dzikich zwierzętach, których należy unikać, i o tym, że wspinanie się po pionowych
skałach to zły pomysł”. Jak więc możesz przekonać mózg, że Twoje życie naprawdę zależy od
nauczenia się rozwijania doskonałego oprogramowania?
Dla kogo przeznaczona ­est ta książka?
26
Wiemy, co sobie myślisz
27
Metapoznanie: myślenie o myśleniu
29
A oto, co TY możesz zrobić, aby zmusić mózg do posłuszeństwa
31
Przeczyta­ koniecznie
32
Zespół recenzentów technicznych
34
Podziękowania
35
400252827.019.png
Spis treści
Doskonały rozwój oprogramowania
1
Zapewnianie zadowolenia klienta
Jeśli klient jest niezadowolony, wszyscy są nieszczęśliwi!
Rozwój wartościowego oprogramowania zawsze rozpoczyna się od genialnego pomysłu klienta.
Twoim zadaniem — jako specjalisty od rozwoju oprogramowania — jest realizacja takich
pomysłów . Jednak przekształcenie nieprecyzyjnej idei w działający kod, który ponadto zadowala
klienta , nie jest proste. W tym rozdziale pokazujemy, jak sprostać wyzwaniom w obszarze
rozwoju oprogramowania i udostępniać potrzebne programy na czas i po ustalonych
kosztach . Pora złapać laptopy i rozpocząć naukę dostarczania doskonałego oprogramowania.
Szlakami Macie­a wchodzi do internetu
38
W większości pro­ektów trzeba uwzględnić dwa główne zagadnienia
39
Rozwó­ oprogramowania metodą wielkiego wybuchu
40
Przenieśmy się w czasie — dwa tygodnie późnie­
41
Rozwó­ oprogramowania metodą wielkiego wybuchu kończy się zwykle
WIELKIMI PROBLEMAMI
42
Doskonały rozwó­ oprogramowania polega na…
45
Dochodzenie do celu dzięki ITERACJOM
46
Każda iterac­a to minipro­ekt
50
Każda iterac­a prowadzi do rozwo­u oprogramowania
o WYSOKIEJ JAKOŚCI
50
Klient BĘDZIE zmieniał zdanie
56
Wprowadzenie poprawek to Two­e zadanie
56
Musisz poradzić sobie z POWAŻNYMI problemami…
56
Cel
Iterac­e automatycznie uwzględnia­ą zmiany
58
Oprogramowanie ­est gotowe dopiero w momencie ­ego
UDOSTĘPNIENIA
61
Narzędzia do Two­e­ programistyczne­ skrzynki narzędziowe­
62
Sto sowałe ś itera cje,
aby do trzeć do celu …
10
400252827.020.png
Spis treści
Zbieranie wymagań
2
Określanie potrzeb klientów
Nie zawsze można dostać to, czego się chce…
jednak lepiej zapewnić to klientom!
Doskonały proces rozwoju oprogramowania prowadzi do udostępnienia tego, czego chcą
klienci . W tym rozdziale opisujemy komunikowanie się z klientami w celu określenia ich
wymagań wobec oprogramowania. Dowiesz się, w jaki sposób opowieści użytkownika ,
burza mózgów i gra planistyczna pomagają w zrozumieniu odbiorców. Dzięki temu do
momentu zakończenia projektu zespół może uzyskać pewność, że stworzył to, czego chcą
klienci, a nie tylko marną namiastkę oczekiwanego produktu.
Orbity Oriona przystępu­ą do modernizac­i
64
Porozmawia­ z klientem, aby uzyskać WIĘCEJ informac­i
67
W obłokach z klientem
68
Czasem ses­e bu­ania w obłokach wygląda­ą tak ­ak na rysunku…
70
Dowiedz się, co użytkownicy NAPRAWDĘ robią
71
Wymagania muszą być zorientowane na KLIENTA
73
T ytuł:
Opis: Witryna ma wyświetlać
aktua lne zamówienia kli entom Orbit Orion a.
Wyświetla nie zamówień
Rozwi­a­ wymagania na podstawie informac­i zwrotnych od klienta
75
Opowieści użytkownika opisu­ą, CO należy zrealizować
w pro­ekcie… a szacunki określa­ą, KIEDY należy to zrobić
77
Tytuł:
Opi s:
Zam awianie pakietu
Rozmowa przy stanowisku pracy
81
Klient Orb it Oriona będzie m ógł
zareze rwować przez inte rnet pakiet specja lny
z do datkowymi usługa mi.
Gra w pokera planistycznego
82
Osądź zasadność założeń
85
Organizowan ie podróży
DŁUGIE w realizac­i opowieści użytkownika to
ZŁE opowieści użytkownika
88
Tytuł:
Opis:
Klient Orb it Oriona będzie
móg ł zorganizować po dróż do kosmodro mu
i z powrotem.
Tytuł:
Opis: Klient Orbit Oriona będzie mógł
zarezerwować miejsce w hotelu.
Rezerwowan ie miejsca w hotelu
Celem ­est zbieżność
91
Cykl przechodzenia od wymagań do szacunków
94
Na zakończenie można oszacować czas trwania całego pro­ektu
97
Narzędzia do Two­e­ programistyczne­ skrzynki narzędziowe­
99
dni
1/2
dnia
1
dzień
dni
dni
dni
dni
1 dni
2 dni
4 dni
100
dni
?
11
400252827.001.png 400252827.002.png 400252827.003.png 400252827.004.png 400252827.005.png 400252827.006.png 400252827.007.png 400252827.008.png 400252827.009.png 400252827.010.png 400252827.011.png 400252827.012.png 400252827.013.png 400252827.014.png 400252827.015.png
Spis treści
Planowanie projektu
3
Planowanie z myślą o sukcesie
Każde wspaniałe oprogramowanie rozpoczyna się od świetnego planu.
W tym rozdziale pokazujemy, jak stworzyć dobry plan. Dowiesz się, jak współpracować
z klientami w celu określenia priorytetowych wymagań . Zobaczysz, jak planować iteracje ,
które zespół może następnie realizować. Ponadto nauczysz się tworzyć realistyczny plan
rozwoju , który zespół może rzetelnie realizować i kontrolować . Dzięki tym umiejętnościom
będziesz umiał łatwo przejść od wymagań do wersji 1.0.
Klienci chcą otrzymać oprogramowanie OD RAZU!
102
Określanie priorytetów razem z klientem
105
Wiemy, co zna­dzie się w wydaniu 1.0 (prawdopodobnie)
106
Jeśli szacowany czas ­est za długi, zmień priorytety
107
Im więce­ osób, tym mnie­ korzyści
109
Dochodzenie do rozsądnego wydania 1.0
110
Iterac­e powinny być krótkie i przy­emne
117
Porównywanie planu z rzeczywistością
119
Szybkość uwzględnia niespodziewane wydarzenia
121
Programiści myślą w kategoriach dni UTOPIJNYCH
122
Twórcy oprogramowania myślą w kategoriach dni REALNYCH
123
Oto, co programista MÓWI…
Co zrobić, ­eśli iterac­a ­est za długa?
124
Uwzględni­ szybkość PRZED zaplanowaniem iterac­i
125
Pewnie, nie ma problemu,
zajmie mi to dwa dni.
Czas na dokonanie oceny
129
Radzenie sobie z wkurzonymi klientami
wkurzonymi klientami
130
Duża tablica na ścianie
132
Jak zru­nować życie osobiste członków zespołu?
135
Narzędzia do Two­e­ programistyczne­ skrzynki narzędziowe­
137
…a to, co tak naprawdę MYŚLI:
Kupię redbulla w drodze do domu, będę pisał
kod do 15., pogram trochę w Halo, a następnie
popracuję do rana. Prześpię się kilka godzin,
poproszę chłopaków o pomoc i skończę do północy
— jeśli tylko nie wystąpią jakieś problemy… lub mama
nie każe mi odgrzać obiadu.
12
400252827.016.png
Zgłoś jeśli naruszono regulamin