Jak radzić sobie z projektami programistycznymi, które zawodzą?


12

Często zdarza się, że projekty kończą się niepowodzeniem.

Jako programista, jak radzisz sobie z projektami, które zawodzą?

Niektóre definicje awarii:

  • Nie dotrzymuje terminu.
  • Kod i funkcjonalność nie działają tak, jak powinny.
  • Oprogramowanie staje się vaporware lub nieskończoną liczbą faz, zasadniczo niemożliwych do dostarczenia.

A może masz własną definicję niepowodzenia.

Czy zaczynasz wskazywać palcami? Czy obwiniasz siebie, wymagania, technologię, zarządzanie, klienta itp.? Czy robisz sesję wyciągniętych wniosków jako zespół?


11
Płaczę jak dziecko. Nie działa jednak dla wszystkich.
ChaosPandion

Czy niepowodzenia definiuje się w tym kontekście jako dobry program (czy to, co powinien, bez błędów), który jednak nie spełnia oczekiwań sprzedażowych?
tcrosley

Odpowiedzi:


8

Powinieneś zrobić lekcje dla wszystkich projektów, które zakończyły się niepowodzeniem lub sukcesem. Z dobrego projektu można się wiele nauczyć.

Prawdziwie nieudane projekty były dla mnie bardzo rzadkie. Oprócz zrozumienia, co się stało, robię „pytaj, dlaczego 5 razy”, aby spróbować dotrzeć do podstawowych przyczyn. Jest także kwestia tego, dlaczego nie zauważyłem, co się dzieje i albo coś z tym zrobiłem, albo przynajmniej się wydostałem.

Myślę, że pierwszym zadaniem każdego jest obwinianie wszystkiego - klienta, technologii, rozwiązywanego problemu biznesowego, metodologii, członków zespołu, języka, platformy, a nawet sposobu, w jaki przyjmujemy kawę rano. Zaletą retrospektywy (nawet jeśli dzieje się to tylko we własnej głowie) jest szansa na pogodzenie się z niektórymi lub wszystkimi tymi czynnikami i uświadomienie sobie, że to nie problem.

W mojej jedynej prawdziwej porażce ostatnich 30 lat projekt wymagał dosłownie lat, kiedy przyjechaliśmy. Wymagania zostały spełnione. Jeden pochodził z zarządzania, a setki od użytkowników końcowych. Napisaliśmy kod, dużo kodu, trochę świetny. Były testy i testy akceptacyjne oraz zmiany i argumenty oraz prośby o zmianę, nieopłacana praca i płatna praca i rygorystyczne last minute, surrealistyczny humor i eskalacje do wiceprezesów i tak dalej. W końcu wszystko się potknęło. Przyczyną niepowodzenia było to, że pojedynczy wymóg zarządzania był nie do przyjęcia dla użytkowników końcowych. I bez względu na to, ile rzeczy założyli, nie mogli tego uniknąć i nigdy nie zaakceptowaliby systemu. Ale kierownictwo nie byłoby inaczej. Tak było i chociaż dostaliśmy dużo pieniędzy, w końcu było

Nadal pracuję w tej technologii, nadal używam tych procesów i nadal pracuję z tymi samymi ludźmi. Zrobiłbym nawet inny projekt dla tego klienta. Ale kiedy użytkownicy końcowi powiedzą, że nie podoba im się coś, co własne zarządzanie wprowadziło do wymagań, przypomnę sobie, że pisanie dobrego kodu, który działa, nie chroni cię przed nieudanym projektem. I wtedy coś z tym zrobię, nie rok czy dwa później.


3
Uśmiecham się, czytając ponownie tę odpowiedź. Pod koniec wszystko stało się bardziej zabawne niż smutne - i spędziłem rok pracując nad tym, nie pobierając za to żadnych opłat. Jednym z moich ulubionych było przekazanie użytkownikowi prośby o zmianę do podpisania, a ona powiedziała: „Nie podpisuję tego - zatrzymasz mnie!” na które mogłem tylko odpowiedzieć „no cóż, więc nie koduję”.
Kate Gregory,

3

Odejdź, suko, przez kilka dni do tygodnia, podczas gdy unikam robienia ważnych rzeczy, a potem spróbuj dowiedzieć się, co poszło źle i jak nie pozwolić, by to się powtórzyło.


3

Istnieje świetna książka na ten temat zatytułowana Marsz Śmierci: http://www.amazon.com/Death-March-2nd-Edward-Yourdon/dp/013143635X

Gorąco polecam ci ją przeczytać. Możesz rozpoznać swój projekt (projekty) w wielu opisach.

Nie ma jednej odpowiedzi, ponieważ w dużej mierze zależy ona od wielu złożonych elementów organizacji, w tym od polityki ...


1

Obwiniałem wszystkich oprócz mnie .... haha, tylko żartowałem. Chodzi mi o to, żeby napisać dokument „Mea Culpa”, w którym wszystkie rzeczy, które „zrobiłem” były złe. może nie pomaga w tym projekcie, ale jest dobrym sposobem, aby nie powtarzać tych samych błędów

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.