Jak ktoś mógłby wdrożyć koncepcje procesu Agile jako samodzielny programista? Zwinne wydaje się przydatne do szybszego tworzenia aplikacji, ale wydaje się również bardzo zorientowane na zespół ...
agile
solo-development
kelleystar
źródło
źródło
Odpowiedzi:
Pamiętam, że czytałem tezę o Cowboy Development, która jest niezbędna zwinna dla programistów solo, ale nie pamiętam, gdzie ją znalazłem.
źródło
W nawiązaniu do odpowiedzi od kleza (wszystkie dobre sugestie) zasugerowałbym następujące:
produktu to zasadniczo lista wszystkich elementów, które zamierzasz uzupełnić na pewnym etapie dla tego produktu.
sprintu rozpoczyna się od listy wszystkich zadań, które zdecydowałeś się ukończyć w tym sprincie (podzbiór zaległości produktu, który ma zostać zakończony w określonym czasie - np. 2 tygodnie) wraz z oszacowanie wymaganej pracy. Kiedy zaznaczasz rzeczy, oznaczasz je jako zrobione; tym samym zmniejszając (lub spalając) pozostałą pracę dla tego sprintu.
Podobnie wypalenie produktu śledzi pozostałą pracę dla całego zaległości produktu
Oszacowanie względne to technika szacowania, która wykorzystuje inne zadania (lub historie) jako wskazówki. Na przykład, jeśli wiesz, że zadanie A jest łatwiejsze niż zadanie B i około dwa razy bardziej złożone niż zadanie C, upewnij się, że „punkty” dla zadania A były prawidłowe w stosunku do tych oczekiwań.
Nacisk kładziony jest nie na prawidłowe odgadnięcie wymaganej pracy, ale na utrzymywanie spójnych szacunków.
Prędkość jest miarą tego, ile „punktów” wykonasz w sprincie. Jeśli oszacowanie względne zapewnia spójność, prędkości tej można użyć do oszacowania zadań, które prawdopodobnie wykonasz w nadchodzących sprintach. Należy jednak pamiętać, że prędkość ta powinna być ciągle zmieniana.
źródło
Te rzeczy dotyczą prawdopodobnie zarówno solo, jak i małej drużyny (2 lub 3 programistów).
DODANO: jakiś czas po napisaniu tej odpowiedzi znalazłem tę konferencję i byłem pod wielkim wrażeniem: Personal Kanban: Optymalizacja indywidualnego kodera
źródło
Ostatecznie zdefiniowałem Agile jako „robienie tego, co ma sens dla zespołu i klienta, i nie stosowanie się do starych praktyk, ponieważ wyglądali, jakby działali w przeszłości”.
źródło
Zwinność działa tak samo dobrze dla jednostek, jak i dla zespołów. Chodzi o znalezienie procesu, który będzie dla ciebie odpowiedni, i umożliwienie ci dostosowania się do zmieniających się okoliczności, gdy projekt już się rozpocznie. Chodzi również o regularne dostarczanie wartości dla klienta, niezależnie od tego, czy oprogramowanie jest rzeczywiście „gotowe”.
Zwinne procesy są wysoce iteracyjne. Praca odbywa się w krótkich TimeBoxach / sprintach / cyklach / iteracjach. Niektóre prace projektowe mogą być wymagane z góry, ale można je zrewidować, gdy dowiesz się więcej o tym, czego potrzebujesz do zrobienia. Testy jednostkowe są podstawą prawie wszystkich metod programowania zwinnego, dając ci wskazanie, czy twoje oprogramowanie działa, i czy dodatki / zmiany w oprogramowaniu złamią istniejącą bazę kodu.
Jeśli zastosujesz się do BDD / TDD, pozwól, aby Twoje wymagania zmieniły się wraz z wiatrem i odpowiednio dostosuj priorytety funkcji, jeśli zbudujesz cały system i często uruchamiasz wszystkie testy, i jeśli dostarczysz działający kod na końcu każdego sprintu , jesteś już zwinny.
źródło
Łał. Starałem się trzymać przyjaciela na haku, do którego mógłbym zadzwonić, gdy miałem kłopoty - i rozmawiać o problemie z kodowaniem. Wiesz, co mam na myśli ... sam fakt wyjaśniania problemu na głos przynosi mi 90% czasu na rozwiązanie.
źródło