La manutenibilità è una delle principali attrazioni dello sviluppo di software professionale. In effetti, la manutenzione è quasi sempre la parte più lunga del ciclo di vita del software, poiché dura dal rilascio del progetto fino alla fine dei tempi.
Inoltre, i progetti in manutenzione rappresentano una grande maggioranza del numero complessivo di progetti. Secondo link , la percentuale di progetti in manutenzione è di circa 2/3.
Recentemente ho trovato questo question , dove il ragazzo sembra abbastanza sorpreso scoprendo che il suo lavoro riguarda principalmente la manutenzione. Ho quindi deciso di aprire un discussione (francese) sul sito principale della comunità francese di professionisti dello sviluppo software ( link ). La discussione è intitolata "Gli studenti sono sufficientemente ben addestrati per la realtà dello sviluppo di software professionale?" e riguarda principalmente manutenibilità . È stato sottolineato che, almeno in Francia, le persone non sono sufficientemente preparate per affrontare la manutenzione in entrambi gli aspetti:
- conserva il codice esistente
- crea codice mantenibile
La mia domanda qui riecheggia in questa discussione e mira a trovare un buon modo per insegnare la manutenibilità.
- Come possiamo insegnare la manutenibilità?
- Che tipo di esercizio suggeriresti?
- Se sei stato ben addestrato riguardo alla manutenibilità, che tipo di corsi hai seguito?
[modifica] Dopo qualche incomprensione, penso di dover chiarire la mia domanda. Come capo progetto e sviluppatore di software, lavoro spesso con tirocinanti o studenti appena laureati. Una volta mi sono appena laureato. Il fatto è che gli studenti di solito non conoscono principi come SOLID che aumentano la manutenibilità di un progetto. Spesso finiamo per avere importanti difficoltà nel far evolvere i progetti (scarsa manutenibilità). Quello che sto cercando qui è un esempio accademico concreto di insegnamento di successo sull'importanza della manutenibilità e su come realizzare un codice migliore per quanto riguarda questo particolare punto; o possibili suggerimenti per migliorare il modo in cui gli studenti sono formati.