Szukasz kursu specjalistycznego z BHP, SEP lub kursu na spawcza? Kurs edukacyjny!

Nieszczęścia wynikające z korygowania harmonogramów cz. II

Aby wykonać zadanie w ciągu czterech miesięcy, biorąc pod uwagę jedynie czas na szkolenie, bez uwzględnienia nowego podziału zadania i dodatkowego testowania systemu, po upływie drugiego miesiąca trzeba przydzielić 4, a nie 2 dodatkowych ludzi. Uwzględniając skutki nowego podziału zadań i testowania systemu, należałoby przydzielić jeszcze więcej ludzi. Teraz jednak mamy już do czynienia z zespołem co najmniej 7-osobowym, a nie 3-osobowym. Takie aspekty inżynierii oprogramowania jak organizacja zespołu i podział zadań są już odmienne jakościowo, a nie tylko ilościowo.

Zauważmy, że pod koniec trzeciego miesiąca sprawy wyglądają bardzo źle. Mimo wszelkich wysiłków kierownictwa nie udało się osiągnąć kamienia milowego wyznaczonego na 1 marca. Powstaje silna pokusa powtórzenia całego cyklu i przydzielenia kolejnych ludzi. W tym właśnie tkwi szaleństwo.

Zakładaliśmy dotychczas, że błędnie oszacowano jedynie czas osiągnięcia pierwszego kamienia milowego. Jeśli 1 marca przyjmie się ostrożne założenie, że cały harmonogram jest zbyt optymistyczny, jak to przedstawiono na rysunku 2.7, to ma się ochotę dodać 6 ludzi do samego początkowego zadania. Obliczenie skutków szkolenia, nowego podziału zadań i testowania systemu pozostawiamy Czytelnikowi jako ćwiczenie. Nie ulega najmniejszej wątpliwości, że katastrofa wynikająca z korygowania harmonogramu doprowadzi w końcu do gorszego produktu niż ten, który otrzymalibyśmy przy ponownym opracowaniu harmonogramu z uwzględnieniem 3 pierwotnie przypisanych do tego zadania ludzi – bez żadnych posiłków. Oto prawo Brooksa w drastycznie uproszczonej postaci:

Przydzielenie dodatkowych osób do opóźnionych już prac nad projektem oprogramowania jeszcze wykonanie tych prac odwleka. Na tym zatem polega obalenie mitu osobomiesiąca. Liczba miesięcy potrzebnych na realizację danego przedsięwzięcia programistycznego zależy od występujących w nim ograniczeń związanych z koniecznością zachowania określonej kolejności działań. Maksymalna liczba ludzi biorących w nim udział zależy od liczby niezależnych zadań cząstkowych. Z tych dwóch wielkości można wyprowadzić plany prac uwzględniające mniejszą liczbę ludzi i większą liczbę miesięcy. (Ryzykuje się przy tym jedynie, że produkt ewentualnie będzie przestarzały). Nie da się jednak opracować realnych planów uwzględniających większą liczbę ludzi i mniejszą liczbę miesięcy. Więcej przedsięwzięć programistycznych zakończyło się niepowodzeniem z powodu braku czasu kalendarzowego niż z wszelkich innych powodów razem wziętych.

Podobne Artykuły

Zostaw odpowiedź

Twoj adres e-mail nie bedzie opublikowany.