Jestem w nowej pracy, w której projekt musi spełniać surowe standardy jakości, być mocno udokumentowany, szczegółowo zarządzany, diagramy UML i wszystkie te rzeczy, które są przeciwieństwem „kodowania kowbojskiego”, w którym większość mojego dotychczasowego doświadczenia zawodowego była . Pomyśl o tym, jak powstaje oprogramowanie na dużą skalę dla przemysłu lotniczego i kosmicznego.
Cieszę się, że mogę opuścić chaos kodowania kowbojskiego i jestem ciekawy, jak dobrze sprawdzają się metody inżynierii ciężkiej. Ale jak szybko zdobyć doświadczenie w stosowaniu ciężkich metod?
Poza tym po prostu bycie w pracy przez pewną liczbę miesięcy / lat.
Za pomocą zwykłego języka lub nowego interfejsu API można zhakować program testów zabawek, czytać, celowo popełniać błędy, aby zobaczyć, co się dzieje, itp. Aby stać się dobrym w jeździe na rowerze lub grze na instrumencie muzycznym, niezbędna jest praktyka. Łatwo jest podnieść flet i spędzić pół godziny każdego dnia; nie trzeba dołączać do orkiestry ani być etatowym konsultantem ds. fletów. Ale jak ćwiczyć działania inżynierii oprogramowania, które są duże, złożone, angażują zespoły, a większość z nich dotyczy komunikacji i planowania oraz unikania nieporozumień i przekraczania limitów harmonogramu i budżetu?
Nie wydaje się to możliwe w pojedynkę. Czy istnieje sposób, aby niewielka liczba osób mogła symulować zaprojektowanie całego dużego projektu na małą skalę w krótkim czasie (jeden dzień)?