<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.0.4" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: Zwinne działania zaczepne</title>
	<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/</link>
	<description>Metody agile w realiach polskiego IT</description>
	<pubDate>Fri, 18 May 2012 19:03:51 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.4</generator>

	<item>
		<title>by: Marcin Niebudek</title>
		<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-27</link>
		<pubDate>Sat, 06 Jan 2007 19:28:37 +0000</pubDate>
		<guid>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-27</guid>
					<description>Produkcja wewnętrznych bibliotek w iteracji zerowej... nie nazwałem tego tak i chyba bym nie nazwał. Dla mnie silnik i wew. biblioteki to dwie zupełnie różne rzeczy i nie włożyłbym ich do jednego worka.

Masz 100% rację, że czasem takich elementów wymaga sam klient, ale wtedy przecież wszystko jest dużo łatwiejsze, bo skoro klient żąda biblioteki, to prosto jest stworzyć user stories opisujące elementy takiej biblioteki (choćby metody odpowiednich klas odpowiadające poszczególnym usługom tej biblioteki). Prezentacja takich user stories mogłaby polegać nawet na pokazaniu kodu testów jednostkowych - tam widać zarówno sposób użycia jak i poprawność działania.

A wracając do iteracji zerowej i silników, czyli w moim rozumieniu pewnych podstawowych/kluczowych elementów systemu wynikających z jego architektury, to chodzi o to, że skoro czujemy konieczność zbudowania ich na początku, to niech się to stanie w iteracji zerowej. Zaznaczam, że mam tu na myśli implementację absolutnie najpotrzebniejszych elementów, bez których nie da się iść dalej. Nie należy starać się zaimplementować od razu pełnego rozwiązania, bo nie ma to sensu. Już kolejna iteracja dowiedzie, że jednak warto coś zmienić. Osobiście nie udało mi się jeszcze w iteracji zerowej napisać czegoś co można by nazwać czymś więcej niż tylko prototypem/eksperymentem, a co podlegałoby ciągłym zmianom w kolejnych iteracjach i w momentach kiedy tylko było to potrzebne. Jednak wielokrotnie co do idei i podstawowego szkieletu, taki silnik z iteracji zerowej nie podlegał już znacznym przebudowom, bo jego wysokopoziomowa budowa wynikała z przyjętej architektury (też na ogólnym ideowym poziomie).

Także jestem tego samego zdania - iteracja zerowa, to przede wszystkim miejsce na eksperymenty i weryfikację pewnych podstawowych pomysłów. Chodzi tylko o to, żeby postarać się mimo wszystko dać na końcu także coś klientowi.</description>
		<content:encoded><![CDATA[<p>Produkcja wewnętrznych bibliotek w iteracji zerowej&#8230; nie nazwałem tego tak i chyba bym nie nazwał. Dla mnie silnik i wew. biblioteki to dwie zupełnie różne rzeczy i nie włożyłbym ich do jednego worka.</p>
<p>Masz 100% rację, że czasem takich elementów wymaga sam klient, ale wtedy przecież wszystko jest dużo łatwiejsze, bo skoro klient żąda biblioteki, to prosto jest stworzyć user stories opisujące elementy takiej biblioteki (choćby metody odpowiednich klas odpowiadające poszczególnym usługom tej biblioteki). Prezentacja takich user stories mogłaby polegać nawet na pokazaniu kodu testów jednostkowych - tam widać zarówno sposób użycia jak i poprawność działania.</p>
<p>A wracając do iteracji zerowej i silników, czyli w moim rozumieniu pewnych podstawowych/kluczowych elementów systemu wynikających z jego architektury, to chodzi o to, że skoro czujemy konieczność zbudowania ich na początku, to niech się to stanie w iteracji zerowej. Zaznaczam, że mam tu na myśli implementację absolutnie najpotrzebniejszych elementów, bez których nie da się iść dalej. Nie należy starać się zaimplementować od razu pełnego rozwiązania, bo nie ma to sensu. Już kolejna iteracja dowiedzie, że jednak warto coś zmienić. Osobiście nie udało mi się jeszcze w iteracji zerowej napisać czegoś co można by nazwać czymś więcej niż tylko prototypem/eksperymentem, a co podlegałoby ciągłym zmianom w kolejnych iteracjach i w momentach kiedy tylko było to potrzebne. Jednak wielokrotnie co do idei i podstawowego szkieletu, taki silnik z iteracji zerowej nie podlegał już znacznym przebudowom, bo jego wysokopoziomowa budowa wynikała z przyjętej architektury (też na ogólnym ideowym poziomie).</p>
<p>Także jestem tego samego zdania - iteracja zerowa, to przede wszystkim miejsce na eksperymenty i weryfikację pewnych podstawowych pomysłów. Chodzi tylko o to, żeby postarać się mimo wszystko dać na końcu także coś klientowi.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Jacek Rybicki</title>
		<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-26</link>
		<pubDate>Fri, 05 Jan 2007 22:50:01 +0000</pubDate>
		<guid>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-26</guid>
					<description>Silniki? Biblioteki? Czasem jest to coś czego sobie klient bezpośrednio życzy - klient może mieć czasem porównywalną z członkami zespołu albo i większą świadomość tematu. Jeżeli jednak potrzeba wydzielenia warstwy wychodzi od projektantów, to można by się zastanowić nad potraktowaniem tego jako sub-projekt z własnymi user stories, opracowanymi na podstawie tego co jest potrzebne dla wyższego poziomu. Pojawia mi się teraz przed oczami wizja silnika coraz to lepszego, tuningowanego, "development driven development"  w czystej postaci.

Jeżeli klient silnika nie zamówił to nie będzie go weryfikował oddzielnie i co chwilę trzeba sobie zadawać pytanie jak duży i elastyczny "silnik" jest potrzebny. Jeżeli jednak zamówił, to jest w stanie określić coś w rodzaju user stories (use-cases) z których można wyprodukować testy akceptacyjne.

Produkcja wewnętrznych bibliotek w iteracji zerowej? Naprawdę tak wcześnie jesteście w stanie coś sensownego urodzić? Ja bym się skłaniał do nazywania tego zarysami bibliotek, wstępnym grupowaniem podobnych elementów, które potem można organizować w coś reużytkowalnego.

Iterację zerową i ogólnie początek projektu lepiej wykorzystać na robienie prowizorki - prototypów, zaślepek na interfejsy, rysunków, szukanie problemów i ogónie badanie tematu.

Oczywiście wszystko zależy od sytuacji :)</description>
		<content:encoded><![CDATA[<p>Silniki? Biblioteki? Czasem jest to coś czego sobie klient bezpośrednio życzy - klient może mieć czasem porównywalną z członkami zespołu albo i większą świadomość tematu. Jeżeli jednak potrzeba wydzielenia warstwy wychodzi od projektantów, to można by się zastanowić nad potraktowaniem tego jako sub-projekt z własnymi user stories, opracowanymi na podstawie tego co jest potrzebne dla wyższego poziomu. Pojawia mi się teraz przed oczami wizja silnika coraz to lepszego, tuningowanego, &#8220;development driven development&#8221;  w czystej postaci.</p>
<p>Jeżeli klient silnika nie zamówił to nie będzie go weryfikował oddzielnie i co chwilę trzeba sobie zadawać pytanie jak duży i elastyczny &#8220;silnik&#8221; jest potrzebny. Jeżeli jednak zamówił, to jest w stanie określić coś w rodzaju user stories (use-cases) z których można wyprodukować testy akceptacyjne.</p>
<p>Produkcja wewnętrznych bibliotek w iteracji zerowej? Naprawdę tak wcześnie jesteście w stanie coś sensownego urodzić? Ja bym się skłaniał do nazywania tego zarysami bibliotek, wstępnym grupowaniem podobnych elementów, które potem można organizować w coś reużytkowalnego.</p>
<p>Iterację zerową i ogólnie początek projektu lepiej wykorzystać na robienie prowizorki - prototypów, zaślepek na interfejsy, rysunków, szukanie problemów i ogónie badanie tematu.</p>
<p>Oczywiście wszystko zależy od sytuacji :)
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Marcin Niebudek</title>
		<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-24</link>
		<pubDate>Fri, 22 Dec 2006 19:14:21 +0000</pubDate>
		<guid>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-24</guid>
					<description>Powszechnie przyjętą praktyką w takim przypadku jest zastosowanie iteracji zerowej. Taka iteracja stanowi pewne odstępstwo od zasad, tzn. większość jej czasu przeznacza się właśnie na implementację pewnych ogólnych mechanizmów systemu, które nie konieczne są funkcjonalnościami z punktu widzenia użytkownika. Często zdarza się także, że taka iteracja trwa trochę dłużej niż standardowa iteracja (np. trzy tygodnie zamiast dwóch). I to tyle teorii :-)

Jeśli chodzi o iterację zerową, to mam jeszcze następujące spostrzeżenia:

&lt;strong&gt;1. &lt;/strong&gt;Warto w iteracji zerowej umieści chociaż jedno czy dwa user stories tak, żeby był mimo wszystko jakiś namacalny dla użytkownika efekt na koniec.

&lt;strong&gt;2. &lt;/strong&gt;Nawet przy okazji implementacji silnika niekoniecznie trzeba go zbudować z najdrobniejszymi szczegółami. Aktualnie też mam taki projekt, który skoncentrowany jest wokół takiego silnika. Na iterację zerową przyjmuję kilka najistotniejszych elementów jego architektury i jak najwcześniej staram się przypuścić na niego "atak" przy pomocy funkcjonalności z user stories. Każda implementacja user story potwierdza słuszność przyjętych w silniku rozwiązań lub też szybko wskazuje na jego niedociągnięcia i braki.

&lt;strong&gt;3. &lt;/strong&gt;Przy implementacji takiego silnika zakładamy, że powinien się on sprawdzić we wszystkich user stories. Tylko problem polega na tym, że wiele z user stories nie jest do końca jasnych na początku projektu. I tak jeszcze wielokrotnie taki silnik będziemy podrasowywać i refaktoryzować. Więc to też jest dla mnie powód do skracania tej wstępnej iteracji.</description>
		<content:encoded><![CDATA[<p>Powszechnie przyjętą praktyką w takim przypadku jest zastosowanie iteracji zerowej. Taka iteracja stanowi pewne odstępstwo od zasad, tzn. większość jej czasu przeznacza się właśnie na implementację pewnych ogólnych mechanizmów systemu, które nie konieczne są funkcjonalnościami z punktu widzenia użytkownika. Często zdarza się także, że taka iteracja trwa trochę dłużej niż standardowa iteracja (np. trzy tygodnie zamiast dwóch). I to tyle teorii :-)</p>
<p>Jeśli chodzi o iterację zerową, to mam jeszcze następujące spostrzeżenia:</p>
<p><strong>1. </strong>Warto w iteracji zerowej umieści chociaż jedno czy dwa user stories tak, żeby był mimo wszystko jakiś namacalny dla użytkownika efekt na koniec.</p>
<p><strong>2. </strong>Nawet przy okazji implementacji silnika niekoniecznie trzeba go zbudować z najdrobniejszymi szczegółami. Aktualnie też mam taki projekt, który skoncentrowany jest wokół takiego silnika. Na iterację zerową przyjmuję kilka najistotniejszych elementów jego architektury i jak najwcześniej staram się przypuścić na niego &#8220;atak&#8221; przy pomocy funkcjonalności z user stories. Każda implementacja user story potwierdza słuszność przyjętych w silniku rozwiązań lub też szybko wskazuje na jego niedociągnięcia i braki.</p>
<p><strong>3. </strong>Przy implementacji takiego silnika zakładamy, że powinien się on sprawdzić we wszystkich user stories. Tylko problem polega na tym, że wiele z user stories nie jest do końca jasnych na początku projektu. I tak jeszcze wielokrotnie taki silnik będziemy podrasowywać i refaktoryzować. Więc to też jest dla mnie powód do skracania tej wstępnej iteracji.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Maciej Mazur</title>
		<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-23</link>
		<pubDate>Fri, 22 Dec 2006 18:45:11 +0000</pubDate>
		<guid>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-23</guid>
					<description>Napisałeś, że podstawową zasadą to dostarczać klientowi część systemu którą będzie mógł użyć. Czy zawsze da się to zastosować stosując metodę user stories?
 Ostatnio spisałem wymagania funkcjonalne za pomocą use case'ów (bardzo podobne do user stories). Istotnym aspektem tego projektu jest to że wymaga on stworzenia silnika, niewielkiej biblioteki, modułu który będzie obsługiwał działanie całej aplikacji. Tymczasem user stories opisują tylko to co użytkownik widzi na ekranie i może wyklikać, czyli na przykład: proces logowania się do serwisu, składania zamówienia, itp. Klient i użytkownik nie ma i nigdy nie będzie wiedział że pod spodem kryje się jakaś biblioteka.
I teraz to co stanowi problem, większość z funkcji opisanych za pomocą user stories nie może funkcjonować bez tego wewnętrzego modułu. Czyli najpierw trzeba stworzyć ten moduł, potem już pójdzie z górki. Jak zatem w początkowych iteracjach zaprezentować coś działającego klientowi?</description>
		<content:encoded><![CDATA[<p>Napisałeś, że podstawową zasadą to dostarczać klientowi część systemu którą będzie mógł użyć. Czy zawsze da się to zastosować stosując metodę user stories?<br />
 Ostatnio spisałem wymagania funkcjonalne za pomocą use case&#8217;ów (bardzo podobne do user stories). Istotnym aspektem tego projektu jest to że wymaga on stworzenia silnika, niewielkiej biblioteki, modułu który będzie obsługiwał działanie całej aplikacji. Tymczasem user stories opisują tylko to co użytkownik widzi na ekranie i może wyklikać, czyli na przykład: proces logowania się do serwisu, składania zamówienia, itp. Klient i użytkownik nie ma i nigdy nie będzie wiedział że pod spodem kryje się jakaś biblioteka.<br />
I teraz to co stanowi problem, większość z funkcji opisanych za pomocą user stories nie może funkcjonować bez tego wewnętrzego modułu. Czyli najpierw trzeba stworzyć ten moduł, potem już pójdzie z górki. Jak zatem w początkowych iteracjach zaprezentować coś działającego klientowi?
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Marcin Niebudek</title>
		<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-22</link>
		<pubDate>Wed, 13 Dec 2006 19:20:33 +0000</pubDate>
		<guid>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-22</guid>
					<description>Niestety nie spotkałem się do tej pory z badaniami na temat współczynnika wydajności wśród różnych zespołów projektowych na zasadzie porównania idealnych szacunków w stosunku do faktycznie spędzonego czasu. Sam bazuje raczej na spostrzeżeniach czy zaleceniach książkowych oraz na własnych próbach.

W przytoczonej przeze mnie książce Cohn twierdzi, że na pierwszą iterację (jeśli "zgadujemy" velocity) powinno się przyjąć wartość pomiędzy jedną trzecią a połową faktycznego czasu. Czyli dla dwóch osób w dwutygodniowej iteracji (20 dni roboczych) przyjmujemy wartość 7-10 dni idealnych. Potem można to zwiększyć.

W małych projektach (3-4 miesięcznych) dla 1-2 osób wychodziła mi wydajność na poziomie ok. 3/4, ale to dopiero pierwsze eksperymenty z mierzeniem tego współczynnika. Generalnie równie ważne jak samo uchwycenie velocity wydaje mi się wspólne szacowanie w zespole. W każdym z tych elementów gdzieś te szacunki się uśredniają i zbliżają do rzeczywistości. Samo velocity raczej traktuje jako pewien współczynnik kontrolny dla stanu "środowiska" projektu, tzn. ważniejszą informacją dla mnie są jego zaburzenia niż wartość średnia.</description>
		<content:encoded><![CDATA[<p>Niestety nie spotkałem się do tej pory z badaniami na temat współczynnika wydajności wśród różnych zespołów projektowych na zasadzie porównania idealnych szacunków w stosunku do faktycznie spędzonego czasu. Sam bazuje raczej na spostrzeżeniach czy zaleceniach książkowych oraz na własnych próbach.</p>
<p>W przytoczonej przeze mnie książce Cohn twierdzi, że na pierwszą iterację (jeśli &#8220;zgadujemy&#8221; velocity) powinno się przyjąć wartość pomiędzy jedną trzecią a połową faktycznego czasu. Czyli dla dwóch osób w dwutygodniowej iteracji (20 dni roboczych) przyjmujemy wartość 7-10 dni idealnych. Potem można to zwiększyć.</p>
<p>W małych projektach (3-4 miesięcznych) dla 1-2 osób wychodziła mi wydajność na poziomie ok. 3/4, ale to dopiero pierwsze eksperymenty z mierzeniem tego współczynnika. Generalnie równie ważne jak samo uchwycenie velocity wydaje mi się wspólne szacowanie w zespole. W każdym z tych elementów gdzieś te szacunki się uśredniają i zbliżają do rzeczywistości. Samo velocity raczej traktuje jako pewien współczynnik kontrolny dla stanu &#8220;środowiska&#8221; projektu, tzn. ważniejszą informacją dla mnie są jego zaburzenia niż wartość średnia.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Jacek Rybicki</title>
		<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-21</link>
		<pubDate>Wed, 13 Dec 2006 12:13:15 +0000</pubDate>
		<guid>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-21</guid>
					<description>Czy masz jakieś dane na temat badań tego współczynnika wydajności?  Nasuwa się mi analogia z metodami mierzenia pracochłonności na podstawie UCP, gdzie uwzględnia się parametry wykonywanego zagadnienia i organizacji.

Wykonanie testów funkcjonalnych dla aplikacji trzeba szacować osobno boi możliwe że magiczny współczynnik będzie inny.

Jeżeli mamy tylko oszacowany koszt wykonania funkcjonalności (obejmującej również dokumentację), w godzinach idealnych, to można zacząć od pomnożenia tego przez dwa - koszt testu (inspekcji). Dopiero potem można zaaplikować współczynnik wydajności zespołu.

pozdrawiam,
Jacek</description>
		<content:encoded><![CDATA[<p>Czy masz jakieś dane na temat badań tego współczynnika wydajności?  Nasuwa się mi analogia z metodami mierzenia pracochłonności na podstawie UCP, gdzie uwzględnia się parametry wykonywanego zagadnienia i organizacji.</p>
<p>Wykonanie testów funkcjonalnych dla aplikacji trzeba szacować osobno boi możliwe że magiczny współczynnik będzie inny.</p>
<p>Jeżeli mamy tylko oszacowany koszt wykonania funkcjonalności (obejmującej również dokumentację), w godzinach idealnych, to można zacząć od pomnożenia tego przez dwa - koszt testu (inspekcji). Dopiero potem można zaaplikować współczynnik wydajności zespołu.</p>
<p>pozdrawiam,<br />
Jacek
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Marcin Niebudek</title>
		<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-20</link>
		<pubDate>Fri, 08 Dec 2006 14:01:16 +0000</pubDate>
		<guid>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-20</guid>
					<description>Oczywiście... zawsze kiedy piszę klient mam tutaj na myśli reprezentanta(ów) użytkowników (tzw. user proxy) lub faktycznych użytkowników. Oczywiście w takich rozmowach powinien uczestniczyć też inwestor (zwykle kto inny płaci a kto inny używa systemu, który robimy), aby mógł on ew. kontrolować zakres produktu za jaki będzie płacił, bo końcowi użytkownicy poproszą o co się da łącznie z wszelkimi możliwymi bajerami o małej wartości biznesowej. Więc ważne aby znaleźć balans między użytecznością i wartością dla przyszłego bizensu.

Pracowałem kiedyś przy implementacji systemu backoffice do zarządzania fragmentem działalności firmy. Wizję i wymagania przedstawiał w głównej mierze sam prezes i ew. jego bezpośredni podwładni (czyli kierownicy działów). Jak łatwo się domyśleć kiedy doszło do wdrożenia, w ciągu pierwszego tygodnia okazało się, że szeregowi pracownicy narzekają, bo ich praca wygląda zupełnie inaczej niż to, w jaki sposób wyobrażał to sobie prezes. Efekt był taki, że system zamiast ułatwiać początkowo utrudniał im wykonanie codziennych czynności. 

Dlatego tak ważne jest dotarcie do faktycznych użytkowników systemu. Wydaje mi się też, że prezentacje produktu po iteracjach bardzo pomagają w uniknięciu takich nieporozumień. Kiedy pokażemy takiemu prezesowi jakiś element systemu do akceptacji (bo to przecież ma na celu taka prezentacja - test akceptacyjny), to zwykle żeby zabezpieczyć się przed pomyłką poprosi on o wryfikację faktycznego użytkownika. Dużo łatwiej klientowi, który nie jest użytkownikiem opowiadać o wymaganiach, niż je później zweryfikować i się pod tym podpisać. Więc po iteracjach zyskujemy naturalne punkty kontrolne, w których jest duża szansa dopadnięcia użytkowników :-)

Pozdrawiam,
Marcin</description>
		<content:encoded><![CDATA[<p>Oczywiście&#8230; zawsze kiedy piszę klient mam tutaj na myśli reprezentanta(ów) użytkowników (tzw. user proxy) lub faktycznych użytkowników. Oczywiście w takich rozmowach powinien uczestniczyć też inwestor (zwykle kto inny płaci a kto inny używa systemu, który robimy), aby mógł on ew. kontrolować zakres produktu za jaki będzie płacił, bo końcowi użytkownicy poproszą o co się da łącznie z wszelkimi możliwymi bajerami o małej wartości biznesowej. Więc ważne aby znaleźć balans między użytecznością i wartością dla przyszłego bizensu.</p>
<p>Pracowałem kiedyś przy implementacji systemu backoffice do zarządzania fragmentem działalności firmy. Wizję i wymagania przedstawiał w głównej mierze sam prezes i ew. jego bezpośredni podwładni (czyli kierownicy działów). Jak łatwo się domyśleć kiedy doszło do wdrożenia, w ciągu pierwszego tygodnia okazało się, że szeregowi pracownicy narzekają, bo ich praca wygląda zupełnie inaczej niż to, w jaki sposób wyobrażał to sobie prezes. Efekt był taki, że system zamiast ułatwiać początkowo utrudniał im wykonanie codziennych czynności. </p>
<p>Dlatego tak ważne jest dotarcie do faktycznych użytkowników systemu. Wydaje mi się też, że prezentacje produktu po iteracjach bardzo pomagają w uniknięciu takich nieporozumień. Kiedy pokażemy takiemu prezesowi jakiś element systemu do akceptacji (bo to przecież ma na celu taka prezentacja - test akceptacyjny), to zwykle żeby zabezpieczyć się przed pomyłką poprosi on o wryfikację faktycznego użytkownika. Dużo łatwiej klientowi, który nie jest użytkownikiem opowiadać o wymaganiach, niż je później zweryfikować i się pod tym podpisać. Więc po iteracjach zyskujemy naturalne punkty kontrolne, w których jest duża szansa dopadnięcia użytkowników :-)</p>
<p>Pozdrawiam,<br />
Marcin
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Jacek Rybicki</title>
		<link>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-19</link>
		<pubDate>Fri, 08 Dec 2006 12:23:48 +0000</pubDate>
		<guid>http://www.agilers.com/teamblog/zwinne-dzialania-zaczepne/#comment-19</guid>
					<description>Klient to brzmi dumnie. Sugerowałbym zwrócenie uwagi kto naprawdę jest odbiorcą aplikacji. Jeżeli organizacja klienta jest duża, może się okazać że kontaktujemy się z jedym działem, a produkt od niego odbierają dwa inne, mające własne wyobrażenia. Przekaz informacji okazuje się tak zanieczyszczony, że w dobrej wierze robimy nie to co jest oczekiwane. Dołóżmy do tego sztywny kontrakt i jesteśmy ugotowani.</description>
		<content:encoded><![CDATA[<p>Klient to brzmi dumnie. Sugerowałbym zwrócenie uwagi kto naprawdę jest odbiorcą aplikacji. Jeżeli organizacja klienta jest duża, może się okazać że kontaktujemy się z jedym działem, a produkt od niego odbierają dwa inne, mające własne wyobrażenia. Przekaz informacji okazuje się tak zanieczyszczony, że w dobrej wierze robimy nie to co jest oczekiwane. Dołóżmy do tego sztywny kontrakt i jesteśmy ugotowani.
</p>
]]></content:encoded>
				</item>
</channel>
</rss>

