-
Data: 2011-12-19 23:21:55
Temat: Re: Porównanie różnych języków
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Dec 19, 5:48 pm, Andrzej Jarzabek <a...@g...com>
wrote:
> > > Nie, nie ma żadnych N miesięcy na pisanie notetek
>
> > A jak nie zdążą?
>
> Jak nie zdążą w jeden dzień, to ewentualnie mają następny dzień, ale
> to już jest sygnał, że trzeba naprawić proces. Jeśli coś, co miało być
> zrobione w jeden dzień okazuje się robotą na wiele miesięcy, to się to
> wycofuje z bieżącej iteracji i robi się repriorytetyzację na kolejnym
> iteration planning. Jeśli coś jest robotą na wiele miesięcy, to nie
> powinno być opisane jako jedna user story.
No przecież ja nie oczekuję, że cały system, który normalnie ma
kilkaset stron opisu, znajdzie się w jednym user story. Oczekuję, że
tych stories będzie np. kilkaset.
I wtedy się okaże, że ich przekazanie (oraz napisanie odpowiednich
notatek) zajmie *w sumie* tyle, ile napisanie całości. Bo chyba
wszędzie jest tak, że całość jest sumą swoich składników, i nic tu się
nie da zaoszczędzić.
Czyli jeśli zamiast spędzenia np. 1 miesiąca na pisaniu dokumentacji
mam to zrobić w czasie 160 1-godzinnych spotkań, to żadna różnica - to
nadal jest *w sumie* 160 godzin.
(W praktyce 160 1-godzinnych spotkań zajmie *znacznie* więcej, niż 160
godzin, ale nie komplikujmy rozważań, bo się zaplączemy w
złośliwościach.)
Jeszcze raz: nie podałeś jeszcze żadnego powodu, dla którego
*sumaryczny* czas spędzony na przekazywaniu wiedzy ma być w agile
mniejszy. Różnica jest taka, że ten czas jest wpleciony w czas trwania
całego projektu, ale nie ma powodu, żeby był *w sumie* krótszy.
Widziałem kiedyś prezentację nt. agile i facet na samym początku
powiedział coś takiego:
***
Wielu ludzi błędnie sądzi, że agile jest po to, żeby projekt
powstał szybciej. Jest to bzdura i bywa nawet, że trwa to dłużej.
Agile powstało po to, żeby lepiej reagować na zmieniające się
wymagania projektowe - i *to* jest właśnie powód, żeby go stosować.
***
Myślę, że to jest sedno naszego nieporozumienia. Nie mam najmniejszej
wątpliwości, że jako sposób prowadzenia projektów agile jest bardziej
odpowiedni, gdy mamy podejrzenia, że wymagania będą się zmieniać w
czasie jazdy - czy to z powodu uwarunkowań dziedzinowych, czy też z
powodu niezrównoważenia klienta, czy nawet z takiego, że cała
dziedzina ma eksploracyjny charakter i nie jest do końca poznana i
można się spodziewać, że wiele rzeczy wyjdzie dopiero w praniu.
Naprawdę - w pełni się zgadzam, że w takiej sytuacji istotna jest
ciągła współpraca między klientem a wykonawcą. W przypadku skrajnym
najlepszym rozwiązaniem jest w ogóle rezygnacja z outsource'owania
projektu i stworzenie lokalnego zespołu programistów, który będzie
temat rozwijał in-house - wtedy w ogóle nia ma sensu wyodrębniać
takiej roli jak OSCR, tylko się szkoli programistów tak, żeby sami
stali się specjalistami danej dziedziny (dodatkowo można to zrobić też
w drugą stronę - pozwolić "domenowcom" pisać kod, który się potem
integruje w całość). Właśnie w takim środowisku spędziłem ostatnie 6
lat (surprise! ;-) ) i w pełni rozumiem potrzebę ścisłej współpracy,
którą agile próbuje zrealizować przez szeroko pojęty gęsty feedback.
To ma sens.
Ale żadna metoda prowadzenia projektów nie może opierać się na
"nierobieniu" czegoś.
Dlatego naprawdę bez sensu jest twierdzić, że w agile chodzi o to,
żeby nie robić dokumentacji. O nic takiego tam nie chodzi i nie może,
z powodów fundamentalnych, czyli z nieredukowalności informacji, która
prowadzi do tego, że przekazywania wiedzy nie da się skrócić. Można
ten proces rozstrzelić i posiekać na tysiąc kawałków przemieszanych z
klepaniem kodu i można nawet ustalić limity, że jeden kawałek nie może
zająć dłużej niż dwie minuty, ale sumaryczny koszt nie zniknie - on
się rozłoży w czasie całego projektu.
Może być przez to mniej nużący. Ale nie zniknie.
Nierobienie dokumentacji jest bez sensu, podobnie jak wyrzucanie do
kosza jakichkolwiek artefaktów projektowych - również notatek.
Z biznesowego punktu widzenia nierobienie dokumentacji jest bez sensu
z kilku powodów. Raz, że wszystko może się przydać przy rozstrzyganiu
konfliktów. Dwa, że wszystko może się przydać, gdy... sprzedaje się
technologię lub całą firmę.
Wtedy lepiej jest mieć równo poukładane segregatory, bo OSCR już
poszedł do domu.
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 19.12.11 23:56 Roman W
- 20.12.11 00:37 Andrzej Jarzabek
- 20.12.11 01:02 Andrzej Jarzabek
- 20.12.11 01:51 Andrzej Jarzabek
- 20.12.11 12:16 Maciej Sobczak
- 20.12.11 21:42 Edek
- 21.12.11 17:03 Andrzej Jarzabek
- 21.12.11 17:40 Andrzej Jarzabek
- 21.12.11 19:26 Edek
- 21.12.11 19:53 Edek
- 21.12.11 23:03 Maciej Sobczak
- 22.12.11 01:25 Andrzej Jarzabek
- 22.12.11 08:51 Roman W
- 22.12.11 08:53 Roman W
- 22.12.11 09:17 Stachu 'Dozzie' K.
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-08 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-08 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-08 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-08 Katowice => Key Account Manager (ERP) <=
- 2025-01-08 Warszawa => Programista Full Stack .Net <=
- 2025-01-08 Podłączenie DMA 8257 do 8085
- 2025-01-08 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-01-08 Warszawa => Solution Architect (Java background) <=
- 2025-01-08 Wrocław => Application Security Engineer <=
- 2025-01-08 Warszawa => International Freight Forwarder <=
- 2025-01-08 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-01-08 Lublin => Inżynier Serwisu Sprzętu Medycznego <=
- 2025-01-08 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-01-08 Gliwice => Business Development Manager - Network and Network Security
- 2025-01-08 Warszawa => Spedytor Międzynarodowy <=