Co to jest dobry plan rozwoju oprogramowania? [zamknięte]

Podczas przeglądania odpowiedzi na SO natknąłem się na coś, co jest, moim zdaniem, jednym z częstszych nieporozumień w zarządzaniu rozwojem oprogramowania: "plan [software development] to dość szczegółowy opis wszystkich działań, które musisz podjąć".

Stąd pytanie: co to jest dobry plan rozwoju oprogramowania? Czy można to sprowadzić tylko do struktury podziału pracy; czy WBS jest najważniejszą rzeczą dla planu rozwoju oprogramowania?

Author: John Saunders, 2009-08-17

5 answers

Plan rozwoju oprogramowania to plan, w jaki sposób będziesz rozwijać oprogramowanie, które zamierzasz rozwijać i dostarczać.

Wiem, że wy, młodzi whippersnappers, myślicie, że wojsko to banda idiotów, ale w rzeczywistości mają duże doświadczenie w tej dziedzinie i w przeciwieństwie do wielu komercyjnych firm, zastanawiają się nad tym, co trzeba zrobić. To zawiera kilka bardzo bolesnych lekcji na temat rzeczy, które należy wziąć pod uwagę, dzięki uprzejmości projektów, które zawiodły bo te rzeczy nie były brane pod uwagę.

Aktualizuję to 10 kwietnia 2010. Źródło DOD-STD-2167a, które wcześniej wymieniłem, zrobiło się ciemne, więc sensowne jest skierowanie Cię zamiast tego na MIL-STD-498. Niestety, MIL-STD-498 został anulowany w 1998 roku, a Departament Obrony oczekuje teraz, że wykonawcy będą używać IEEE/EIA-12207 zamiast tego. Standardy IEEE nie są jednak wolne jak w piwie.

Zobacz DI-IPSC-81427A zarys planu rozwoju oprogramowania.

Jak czytasz listę rzeczy które są wymagane, można odnieść wrażenie, że niektóre z tych paragrafów są, jak przepisy Marynarki Wojennej, napisane krwią. Jest powód takiego wrażenia: są. Projekty nie powiodły się, ponieważ nie zajęły się tymi obszarami na czas.

Zobacz też http://sepo.spawar.navy.mil/SW_Standards.html : możesz pobrać .zip ze standardowym i wszystkimi opisami pozycji danych (specyfikacje dla poszczególnych dokumentów).

(tak, Wiem, że DoD został odsunięty od DOD-STD-2167A, na rzecz standardów komercyjnych IEEE. Jednak IEEE pobiera opłaty za rękę, nogę i prawa do przeszczepu lewej nerki za ich standardy. Standardy DOD są darmowe jak w piwie.)

Edit: Fixed 1st link

 41
Author: John R. Strohm,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-06 12:42:57

"plan [rozwoju oprogramowania] to dość szczegółowy opis wszystkich działań, które musisz podjąć".

Które, ogólnie rzecz biorąc, nie mogą istnieć.

Jeśli rzeczywiście masz wszystkie wymagania w pełni zrozumiane, i masz wszystkie kwestie technologiczne w pełni zrozumiane, możesz napisać taki dokument.

Jeśli jednak robisz coś nowego -- coś, czego użytkownicy jeszcze nie zainstalowali -- lub używasz nowego technologii, nie możesz podać nawet" rozsądnie " szczegółowego opisu działań, które musisz podjąć.

Możesz podać przegląd, który podsumuje niektóre z tego, co musisz zrobić. Ale w miarę poznawania wymagań użytkownicy będą odkrywać rzeczy, uczyć się i zmieniać zdanie. Zmiana planu. Podczas odkrywania technologii programiści będą odkrywać rzeczy, uczyć się i zmieniać plan.

To nie może być takie trudne. czas.

Audiencja planu to zarządzanie. Menedżerowie chcą" rozsądnie " szczegółowy opis wszystkich działań. W miarę jak użytkownicy i Programiści poznają wymagania i technologię, zmieniają się szczegóły. To sprawia, że" rozsądny " test jest bardzo, bardzo trudny do spełnienia. Kiedy szczegóły zmieniają się stale, jaki poziom szczegółowości jest "rozsądny"?

Zmiany w planie mogą (i robią) nadejść codziennie. Większość menedżerów nie będzie chciała wprowadzać codziennych zmian w planie. Więc zbyt wiele szczegółów staje się"nierozsądne". Aby stworzyć plan, który nie zmienia się zbyt często, plan faktycznie musi być podsumowaniem działań. Jedyną wykonalną wersją "Planu Rozwoju Oprogramowania" jest szereg celów zdefiniowanych-Nie w kategoriach działań - w kategoriach funkcjonalności, które mają być udostępniane użytkownikom.

W skrócie, ludzie robią to źle cały czas. W ciągu ponad 30 lat rozwoju oprogramowania (w dużej mierze jako podwykonawca wojskowy) istnieje fantazja o planowanie, które po prostu nie jest zrodzone przez fakty. Projekty są anulowane z" rozsądnie szczegółowymi " planami, zbyt szczegółowymi planami i bez planu w ogóle.

Rzeczywiście, plan jest często główną przyczyną anulowania. Dlaczego? Z "dość szczegółową" listą działań, każda nauka oznacza, że plan jest zły. Ponieważ plan odbiega od rzeczywistej realizacji, coś musi być nie tak. Rzuć monetą. Jeśli uznasz, że wykonanie jest błędne, anuluj projekt za nieprzestrzeganie planu. Jeśli / align = "left" / Im bardziej szczegółowy plan, tym bardziej wydaje się "właściwy" i tym bardziej prawdopodobne jest, że wykonanie zostanie uznane za błędne.

Bottom Line .

Plan rozwoju oprogramowania może być dokumentem fantazji napisanym jako część "wodospadu" metodologii rozwoju, w której wszystkie rodzaje rzeczy są zawyżone z góry i zmiany (z uczenia się w miarę postępu zespołu) są karane.

LUB

Plan Rozwoju Oprogramowania jest to zwinny Wykres burndown , który po prostu pokazuje sprinty do ukończenia. "Rozsądny" poziom szczegółowości jest właściwie dość niski - to tylko podsumowanie. I zmienia się podczas każdego sprintu.

 18
Author: S.Lott,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-18 00:08:15

Artefakt: Plan Rozwoju Oprogramowania

Plan rozwoju oprogramowania jest kompleksowy, złożony artefakt, który gromadzi wszystkie informacje wymagane do Zarządzaj projektem. Obejmuje on liczba artefaktów powstałych podczas Faza początkowa i jest utrzymywana w całym projekcie.

Plan rozwoju oprogramowania zawiera

  1. Plan Rozwiązywania Problemów
  2. Akceptacja Produktu Plan
  3. Plan Pomiarowy
  4. Plan Zarządzania Ryzykiem
  5. Plan Zapewnienia Jakości

Wytyczne: Plan Rozwoju Oprogramowania

 7
Author: rahul,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-17 13:06:07

Plan rozwoju oprogramowania jest specyficznym rodzajem planu projektu. Podczas gdy WBS jest ważne, to tylko drapanie powierzchni.

Kompleksowy plan projektu powinien mieć:

  1. Scope plan (zawiera WBS)
  2. plan zajęć
  3. Plan kosztów
  4. Plan Jakości
  5. plan zatrudnienia
  6. plan komunikacji
  7. Plan ryzyka
  8. plan zamówień.

Więcej informacji na temat każdego z tych planów można znaleźć w

Na Wiedza o zarządzaniu projektami.

Aby uzyskać bardziej szczegółowe wskazówki, zobacz Kod Complete 2 .

 5
Author: JonnyD,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-08-17 13:39:44

Co uważam, że projekt programistyczny powinien być podzielony na dwie części

  1. Zarządzanie oprogramowaniem
  2. Rozwój Oprogramowania

W zarządzaniu projektami można uwzględnić wszystkie dodatkowe możliwe rzeczy, takie jak cel firmy, planowanie projektu, monitorowanie projektu, szacowanie, księgowanie arkuszy czasu, śledzenie defektów itp..

W rozwoju projektu Cykl życia projektu będzie utrzymywany jak pełny wodospad

 0
Author: Jaswant Agarwal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-22 05:21:48