Temat: Stosowanie Agile - czy to zawsze jest uzasadnione?

Witam

Startujemy z nowym wewnętrznym projektem internetowym. Projekt będzie tworzony przyrostowo, ze względu na potrzebę szybkiego uruchomienia systemu i oddania do użytku. Zastanawiam się w moim przypadku nad sensownością używania technik Agile (metodyka Scrum).

Projekt będzie realizowany przez jednego dobrego programistę Doraźnie w razie potrzeby prace będę uzupełniane działaniami grafika + osoby odpowiedzialnej za wygląd systemu (webdesignera) oraz ewentualnie mniej doświadczonego programisty do prac pomocniczych. Wszystkie te osoby będą pracowały w miarę niezależnie (może poza programistami). Można przyjąć iż ja jestem właścicielem projektu oraz jednocześnie kimś w roli PM lub scrumMastera (zależnie od nazewnictwa i metodyki).

I tu mam dylemat. Czy istnieją racjonalne przesłanki, aby w takim składzie i przy takich założeniach stosować techniki Agile (jakie?) oraz Scrum? Jeśli nie to od jakiej liczby osób warto o czymś takim myśleć?
Druga kwestia bardziej otwarta to jak techniki Agile sprawdzają się w pracy zdalnej gdzie ludzie są rozrzuceni w różnych lokalizacjach?

Pozdrawiam
Wojtek
Piotr Owsiak

Piotr Owsiak
projektant/programis
ta .NET
(freelance/contrator
), pragma...

Temat: Stosowanie Agile - czy to zawsze jest uzasadnione?

Scrum ponoć jest optymalny dla 7 (+/- 2) osób.
Moim zdaniem możesz stosować wybrane elementy Scrum nawet przy jednoosobowym projekcie, np. burn-down chart myślę, że powinien dobrze się sprawdzić.
Z kolei dziwne będzie bycie Scrum Masterem dla samego siebie, prawda? ;-P

TDD pewnie też Ci się sprawdzi.

Co do pracy zdalnej to też jestem ciekaw. Ma ktoś jakieś doświadczenia?
Pewnie trudniej (lub może być nawet niemożliwe) zrobić porządny stand-up :)
Reszta pewnie przy profesjonalnym podejściu (z wykorzystaniem odp. narzędzi) jest do zrobienia ;-)
Bartosz Kramek

Bartosz Kramek Fundacja Otwarty
Dialog

Temat: Stosowanie Agile - czy to zawsze jest uzasadnione?

Sugeruję porozmawiać/zaprosić do dyskusji Paula Klippa (Lunar Logic Polska) - ma spore doświadczenia w "zdalnym Scrumie" i consultingu Agile.

http://www.paulklipp.com/

http://www.goldenline.pl/paul-klipp
Katarzyna Firkowska

Katarzyna Firkowska Analityk biznesowy

Temat: Stosowanie Agile - czy to zawsze jest uzasadnione?

Rozproszony zespół to jedna z zagwózdek Agile. Z jednej strony mamy stand-upy, zespół posadzony blisko siebie i częste spotkania planistyczne/kontrolne/podsumowujące. Z drugiej - ludzi porozrzucanych np. po świecie (gdzie w najgorszym przypadku częste podróże są utrudnione/niemożliwe). Myślę, że wszystko zależy, jak dokładnie to rozproszenie wygląda. Ile osób i na jakich pozycjach mamy w poszczególnych lokalizacjach? Ile osób liczy cały zespół? Znając odpowiedzi na te pytania, można dopiero rozważać konkretne opcje, jak stosować Agile.
Sebastian Nowak

Sebastian Nowak Programista
aplikacji
internetowych

Temat: Stosowanie Agile - czy to zawsze jest uzasadnione?

Na ostatnim 3camp Wojciech Szeliga ze Spartez mówił o tym jak oni sobie radzą z "wybitnie rozproszonym geograficznie zespołem":
Link do filmu poniżej:
http://www.3camp.pl/index.php/2009/06/01/3camp12-film-...

konto usunięte

Temat: Stosowanie Agile - czy to zawsze jest uzasadnione?

Katarzyna R.:
Rozproszony zespół to jedna z zagwózdek Agile. Z jednej strony mamy stand-upy, zespół posadzony blisko siebie i częste spotkania planistyczne/kontrolne/podsumowujące. Z drugiej - ludzi porozrzucanych np. po świecie (gdzie w najgorszym przypadku częste podróże są utrudnione/niemożliwe). Myślę, że wszystko zależy, jak dokładnie to rozproszenie wygląda. Ile osób i na jakich pozycjach mamy w poszczególnych lokalizacjach? Ile osób liczy cały zespół? Znając odpowiedzi na te pytania, można dopiero rozważać konkretne opcje, jak stosować Agile.
Nie wchodząc w dokładne szczegóły są już znane rozwiązania takich problemów: po pierwsze zawsze można robić daily meetings wewnętrznie a później synchronizować na tzw. scrum of scrums czyli synchronizowaniu pomiędzy zespołami. Po drugie jest przecież dostępne wiele rozwiązań do wideokonferencji (chićby najprościej przez Skype'a). Zawsze to nie jest face-to-face ale zawsze pomaga. Do tego oczywiście czym bardziej rozproszony zespół tym bardziej warto zainwetsować w takie rozmieszczenie team'ów by były zorganizowane wokół architektury i oczywiście wymieszane (unikanie zespół typu jedynie developerzy czy testerzy). Oczywiście na koniec wspólny system śledzenia zadań (akurat u nas zastosowany jest z dobrym skutkiem albo Jira + Greenhooper plug-in albo IBM Rational Team Concert). Chociaż oczywiście wszystko zależy od sytuacji jaka jest i dostosowania rozwiązań które najbardziej pasują zespołom.

konto usunięte

Temat: Stosowanie Agile - czy to zawsze jest uzasadnione?

Wojciech Mocarski:
Startujemy z nowym wewnętrznym projektem internetowym. Projekt będzie tworzony przyrostowo, ze względu na potrzebę szybkiego uruchomienia systemu i oddania do użytku. Zastanawiam się w moim przypadku nad sensownością używania technik Agile (metodyka Scrum).

Już w drugim zdaniu definiujesz potrzebe używania technik Agile. Więc pytanie postawione w ostatnim jest raczej retoryczne.
I tu mam dylemat. Czy istnieją racjonalne przesłanki, aby w takim składzie i przy takich założeniach stosować techniki Agile (jakie?) oraz Scrum?

Istnieją racjonalne przesłanki:

* chcesz rozwijać projekt przyrostowo
* nie chcesz tracić czasu na definiowanie od razu całości projektu
* nie musisz się martwić biurokracją, w projekt zaangażowanych będzie tylko kilka osób

Spojrzeniem praktyka:

* metodyką interesujesz się by zapoznać się z narzędziami, rozwiązaniami, poczytaj troche o róźnych, wybierz te narzędzia, które najbardziej Ci odpowiadają
* tak czy inaczej nie jest to projekt indywidualny, dlatego ważne są narzędzia ułatwiające komunikację i pozwalające prześledzić historię projektu nowym członkom zespołu, np. SVN, trac
Jeśli nie to od jakiej liczby osób warto o czymś takim myśleć?

od momentu gdy planujesz by projekt był zespołowy i zależy Ci na jakości komunikacji, powinnienes myslec o podzieleniu projektu na etapy, kazdy etap powinien byc zdefiniowany ogolnie, podzielony na zadania, zadania zdefiniowane ogolnie, detale interesuja tylko stricte zainteresowanych, czyli np. zamawiajacego i wykonawce, pozniej i tak nowy czlonek zespolu, moze obejrzec wyniki by zrozumiec historie
Druga kwestia bardziej otwarta to jak techniki Agile sprawdzają się w pracy zdalnej gdzie ludzie są rozrzuceni w różnych lokalizacjach?

nie chodzi o techniki, chodzi o narzedzia komunikacji,

* organizacyjne/historyczne takie jak np. SVN, TRAC
* wymiany informacji indywidualnej/detalistycznej takie jak : mail, chat, multichat, telekonferencja, wideokonferencja
Pozdrawiam
Wojtek

Podstawa metodyk Agile jest zwinnosc komunikacji, zwinnosc zarzadzania informacja na poziomie ogolu i szczegolu.

Pozdrawiam

Tomek
Sebastian Szulc

Sebastian Szulc Dobry programisto!
Szukamy właśnie
Ciebie!

Temat: Stosowanie Agile - czy to zawsze jest uzasadnione?

Witaj,

To, że jest to projekt wewnętrzny może dać Ci pewne fory, jeśli chcesz spróbować Scrum. Klient wewnętrzny jest często badziej pobłażliwy, niż zewnętrzny. Poza tym jeśli to Ty jesteś tym klientem, może być Wam jeszcze łatwiej.

To, czy zacząć pracować w agile zeleży też od wielkości projektu. Jeśli jest to nieduży projekt, który masz dokładnie wymyślony i opisany, a do tego masz dobrego programistę, powinno Wam się udać go szybciej wykonać waterfallowo. Odpadną "koszty" związane z dostosowaniem zespołu do nowej metodologii.

Programista czy tester "na doczepkę" rzadko sprawdza się w Scrum. Każdy z członków musi być zaangażowany w projekt. Musi czuć, że jest to jego/jej projekt i czuć za niego odpowiedzialność. Dlatego Scrum jest trudniejszy od waterfall: za projekt odpowiada cały zespół i każdy z osobna. Za całość, a nie za poszczególne elementy.

Scrum master nie mówi członkom zespołu, co mają robić. On dba tylko o to, żeby pracowało im się jak najlepiej. Łączenie obowiązków scrum mastera i product ownera często bardziej przeszkadza, niż pomaga. Stąd już bardzo blisko do całkowitego podporządkowania prac zespołu jednej osobie.

Scrum jest bardzo wymagającą techniką. Jest jeszcze bardziej wymagającą, gdy zespół jest rozproszony. Sukces nie zależy tak bardzo od ilości członków zespołu, tylko od ich "jakości" i zaangażowania.

Jeśli zdecydujecie się jako zespół pracować w oparciu o Scrum, będzie bardzo trudno: będziecie musieli bardzo chcieć i każdemu z Was będzie musiało zależeć na tym, żeby projekt zakończył się sukcesem. Bez zaangażowania całego zespołu łatwiej będzie Wam zakończyć ten projekt w oparciu o Waterfall używając kilku elementów extreme programming. Musicie zadbać o częsty i sprawny kontakt ze sobą: wideokonferencje, rozmowy, czat/irc, wiki i jakaś bugzilla to podstawa.

Projekty w Scrum raczej Ci nie wyjdą, jeśli nie będziecie tworzyć zespołu z jasno określonym i wspieranym przez każdego celem. Dobry i oddany zespół, w którym ludzie są otwarci i się nazwzajem szanują, to podstawa. Jeśli uważasz, że taki tworzycie, powinno się Wam udać.

Sebastian



Wyślij zaproszenie do