Utrzymanie jest głównym przedmiotem profesjonalnego rozwoju oprogramowania. Rzeczywiście, konserwacja jest prawie zawsze najdłuższą częścią cyklu życia oprogramowania, ponieważ trwa od wydania projektu aż do końca czasów.
Ponadto projekty będące w konserwacji stanowią znaczną większość ogólnej liczby projektów. Według http://www.vlegaci.com/298/interesting-statistics-%E2%80%93-numbers-of-programmers-in-maintenance-vs-development/ , odsetek projektów będących w utrzymaniu wynosi około 2 / 3.
Ostatnio natknąłem się na to pytanie , gdzie facet wygląda na dość zaskoczonego, odkrywając, że jego praca polega głównie na utrzymaniu. Następnie postanowiłem otworzyć dyskusję (w języku francuskim) na głównej stronie francuskiej społeczności specjalistów od tworzenia oprogramowania ( http://www.developpez.com/ ). Dyskusja jest zatytułowana „Czy studenci są wystarczająco dobrze wyszkoleni do rzeczywistości profesjonalnego tworzenia oprogramowania?” i dotyczy głównie łatwości konserwacji . Zwrócono uwagę, że przynajmniej we Francji ludzie nie są wystarczająco przygotowani, aby stawić czoła alimentów w obu aspektach:
- zachowaj istniejący kod
- tworzyć łatwy do utrzymania kod
Moje pytanie znajduje odzwierciedlenie w tej dyskusji i ma na celu znalezienie dobrego sposobu na nauczenie obsługi.
- Jak możemy uczyć utrzymywalności?
- Jakie ćwiczenia poleciłbyś?
- Jeśli jesteś dobrze wyszkolony w zakresie konserwacji, jaki konkretny rodzaj kursów odbyłeś?
[edytuj] Po pewnym nieporozumieniu myślę, że muszę wyjaśnić moje pytanie. Jako lider projektu i programista często pracuję ze stażystami lub świeżo ukońconymi studentami. Kiedyś byłem świeżo po studiach. Chodzi o to, że uczniowie zwykle nie znają zasad takich jak SOLID, które zwiększają łatwość utrzymania projektu. Często mamy poważne trudności z ewolucją projektów (niska konserwowalność). To, czego tu szukam, to konkretny akademicki przykład udanego nauczania o znaczeniu łatwości konserwacji i o tym, jak stworzyć lepszy kod dotyczący tego konkretnego punktu; lub ewentualne sugestie dotyczące poprawy sposobu szkolenia uczniów.