Book description
Zbiór praktycznych wskazówek dla producentów oprogramowania
- Jak wdro?y? metodologi? programowania zwinnego?
- W jaki sposób zaanga?owa? klientów w projekt?
- Jak kontrolowa? jako?? produktów?
Programowanie zwinne (Agile Development) to obecnie jedna z najpopularniejszych metodologii zarz?dzania projektami programistycznymi. Metodyka Agile jest szczególnie u?yteczna w ma?ych zespo?ach programistycznych, w których z racji u?atwionej komunikacji nie ma potrzeby tworzenia rozbudowanej dokumentacji. Programowanie zwinne opiera si? na iteracyjnej realizacji kolejnych etapów projektu. Kluczem do sukcesu w tej metodzie jest efektywna wspó?praca mi?dzy cz?onkami zespo?u projektowego.
Ksi??ka "Agile Development. Filozofia programowania zwinnego" to przewodnik po programowaniu ekstremalnym, oznaczanym zwykle skrótem XP, które jest jedn? z technik wchodz?cych w sk?ad tej metodyki. Czytaj?c j?, dowiesz si?, jak wdra?a? metodologi? Agile w firmie, na czym polega programowanie ekstremalne i jak? rol? w procesie pe?ni? poszczególni cz?onkowie grupy projektowej. Nauczysz si? budowa? zespó? i okre?la? zakresy zada? osób bior?cych udzia? w pracach, planowa? harmogram udost?pniania kolejnych wersji produktu oraz kierowa? procesem jego tworzenia. Poznasz metody testowania programu i usuwania z niego b??dów, zasady pisania dokumentacji oraz regu?y prowadzenia spotka? roboczych z klientami.
- Wdra?anie programowania zwinnego
- Techniki programowania ekstremalnego
- Cz?onkowie zespo?u XP
- Zarz?dzanie zespo?em
- Anga?owanie klienta w proces wytwórczy
- Tworzenie raportów
- Udost?pnianie kolejnych wersji systemu
- Standardy pisania kodu
- Testowanie i usuwanie b??dów
- Optymalizacja wydajno?ci programu
Od filozofii do mistrzostwa w zwinnym programowaniu!
Table of contents
- Agile Development. Filozofia programowania zwinnego
- Dedykacja
- SPECIAL OFFER: Upgrade this ebook with O’Reilly
- Pochwała Agile Development. Filozofia programowania zwinnego
- Wprowadzenie
-
I. Zaczynamy
- 1. Dlaczego zwinne programowanie?
- 2. Jak być zwinnym?
- 3. Zrozumieć XP
-
4. Wprowadzanie XP
-
Czy XP to coś dla nas?
- Wymaganie wstępne numer 1: wsparcie zarządu
- Wymaganie wstępne numer 2: zgoda zespołu
- Wymaganie wstępne numer 3: praca zespołu w jednym miejscu
- Wymaganie wstępne numer 4: przedstawiciele klientów
- Wymaganie wstępne numer 5: odpowiednia wielkość zespołu
- Wymaganie wstępne numer 6: stosowanie wszystkich praktyk
- Zalecenie numer 1: nowy kod bazowy
- Zalecenie numer 2: wysokie umiejętności w obszarze projektowania
- Zalecenie numer 3: język łatwy do refaktoryzacji
- Zalecenie numer 4: doświadczony coach programista
- Zalecenie numer 5: przyjazny i spójny zespół
- Naprzód!
- Ocena zwinności zespołu
-
Czy XP to coś dla nas?
-
II. Stosowanie XP
- 5. Myślenie
-
6. Współpraca
-
Zaufanie
- Strategia zespołowa numer 1: empatia między klientem a programistą
- Strategia zespołowa numer 2: empatia między programistami a testerami
- Strategia zespołowa numer 3: wspólne spożywanie posiłków
- Strategia zespołowa numer 4: ciągłość zespołu
- Wrażenie
- Strategia organizacyjna numer 1: wykazywanie się aktywnością
- Strategia organizacyjna numer 2: realizacja zobowiązań
- Strategia organizacyjna numer 3: zarządzanie problemami
- Strategia organizacyjna numer 4: szanowanie celów klientów
- Strategia organizacyjna numer 5: promocja zespołu
- Strategia organizacyjna numer 6: uczciwość
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Dalsza lektura
-
Wspólna praca
- Radzenie sobie z nieskuteczną komunikacją
- Lepszy sposób
- Wykorzystywanie doskonałej komunikacji
- Sekrety wspólnej pracy
- Przygotowywanie pomieszczenia
- Projektowanie pomieszczenia roboczego
- Przykładowe pomieszczenie robocze
- Małe pomieszczenie robocze
- Przeprowadzka do otwartego pomieszczenia roboczego
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Dalsza lektura
- Zaangażowanie prawdziwego klienta
- Wspólny język
- Krótkie spotkania robocze
- Standardy pisania kodu
- Demonstracje iteracji
- Raporty
-
Zaufanie
-
7. Udostępnianie
- „W pełni gotowe”
-
Brak błędów
- Jak to możliwe?
- Jak dojść do prawie zerowego poziomu błędów?
- Składnik numer 1: mniej błędów w czasie pisania kodu
- Składnik numer 2: eliminacja miejsc sprzyjających powstawaniu błędów
- Składnik numer 3: naprawianie błędów od razu
- Składnik numer 4: testowanie procesu
- Składnik numer 5: usprawnianie procesu
- Gruntowna zmiana oczekiwań
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Dalsza lektura
- Kontrola wersji
-
Dziesięciominutowa kompilacja
- Automatyzacja kompilacji
- Jak automatyzować?
- Kiedy stosować automatyzację?
- Automatyzacja odziedziczonych projektów
- Dziesięć minut lub mniej
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Ciągła integracja
- Dlaczego to działa?
- Jak stosować ciągłą integrację?
- Zachowywanie poprawności kompilacji
- Proces ciągłej integracji
- Wprowadzanie ciągłej integracji
- Sposoby na długą kompilację
- Kompilacja w integracji wieloetapowej
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Współwłasność kodu
- Dokumentacja
-
8. Planowanie
- Wizja
-
Planowanie wydania
- Jeden projekt w danym momencie
- Wczesne i częste udostępnianie
- Jak umożliwić częste udostępnianie kodu?
- Przykład
- Przystosowywanie planów
- Zachowanie elastyczności
- Jak przygotować plan wydania?
- Planowanie w ostatnim momencie na podjęcie zobowiązań
- Planowanie przystosowawcze i kultura organizacji
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Dalsza lektura
- Gra planistyczna
- Zarządzanie ryzykiem
-
Planowanie iteracji
- Ograniczenie czasowe iteracji
- Harmonogram iteracji
- Jak zaplanować iterację?
- Ceremonia podejmowania zobowiązań
- Po sesji planowania
- Zarządzanie długimi sesjami planowania
- Śledzenie iteracji
- Co robić, kiedy pojawią się problemy?
- Częściowo ukończona praca
- Nagłe żądania
- Batman
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Dalsza lektura
- Zapas
- Opowieści
-
Szacowanie
- Dobre I Złe Metody Szacowania
- Szybkość
- Szybkość i ograniczenie czasowe iteracji
- Jak dokonywać stabilnych szacunków?
- Jak szacować koszty opowieści?
- Jak oszacować koszt zadań wchodzących w skład iteracji?
- Co zrobić, kiedy szacowanie sprawia trudności?
- Wyjaśnianie szacunków
- Jak zwiększyć szybkość?
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Dalsza lektura
-
9. Wytwarzanie
- Stopniowe zbieranie wymagań
- Testy klienta
-
Wytwarzanie sterowane testami
- Dlaczego technika TDD jest skuteczna?
- Jak stosować TDD?
- Przykład wykorzystania TDD
- valueFor()
- Metoda count() dla wielu elementów
- Narzędzia do testowania
- Znaczenie szybkości
- Testy jednostek
- Wyspecjalizowane testy integracji
- Testy kompleksowe
- TDD i odziedziczony kod
- Pytania
- Efekty
- Przeciwwskazania
- Inne możliwości
- Dalsza lektura
- Refaktoryzacja
- Prosty projekt
- Stopniowy rozwój projektu i architektury
- Rozwiązania punktowe
- Optymalizacja wydajności
- Testy eksploracyjne
-
III. Mistrzostwo w dziedzinie programowania zwinnego
- 10. Wartości i zasady
- 11. Usprawnianie procesu
- 12. Poleganie na ludziach
- 13. Eliminowanie marnotrawstwa
- 14. Zapewnianie wartości
- 15. Dążenie do doskonałości technicznej
- A. Literatura cytowana
- B. O autorach
- Indeks
- Kolofon
- SPECIAL OFFER: Upgrade this ebook with O’Reilly
- Copyright
Product information
- Title: Agile Development. Filozofia programowania zwinnego
- Author(s):
- Release date: July 2008
- Publisher(s): Helion
- ISBN: 9781457176029
You might also like
book
Special Edition Using Microsoft® Office Word 2007
THE ONLY WORD 2007 BOOK YOU NEED This book will help you build solid skills to …
book
Praktyka czyni mistrza
Jeśli chcesz być świetnym programistą, nie możesz poprzestać tylko na opanowaniu narzędzi deweloperskich i kilku języków …
book
Przewodnik po Pythonie
Python to potężny, wszechstronny, a do tego cechujący się prostotą i elastycznością język ułatwiający wydajne tworzenie …
book
Lider produktu
Praca lidera produktu jest duzym wyzwaniem. Ze stanowiskiem tym czesto wiaze sie znaczna odpowiedzialnosc, jednak bez …