Gold-plating

Qualche settimana fa non conoscevo questo termine.

Avete presente quel momento in cui si sta sviluppando qualcosa e il pensiero comincia a prendere la tangente: “Ma se succedesse anche questo allora c’è bisogno di quest’altro. A questo punto all’ora potrei implementare questa funzione!”. Oppure: “Aggiungiamo anche questa funzione perché magari può succedere che…”. Quando sentiamo queste frasi dette da qualcun altro o che girano per la nostra testa dovremmo immediatamente tirare il freno a mano. Quello che sta succedendo è, molto probabilmente, gold-plating. Stiamo facendo più del richiesto.

Quando sviluppiamo un software che sia su commessa o che sia per essere proposto nel mercato, dovremmo fare ogni sforzo possibile per implementare solo ed esclusivamente quelle funzioni che sono state analizzate e confermate in fasi precedenti allo sviluppo. Se stiamo affrontando un esercizio accademico, o per studio, allora ci può stare ma non esistono altre eccezioni.

I motivi?

  • Potremmo sviluppare qualcosa di non gradito;
  • Potremmo addentrarci nello sviluppo di qualcosa che, involontariamente, peggiora la situazione del progetto perché più complessa del previsto;
  • Si compromette la buona riuscita del progetto perché si sta dedicando tempo a qualcosa che  non era stato inserito nella pianificazione;
  • Potremmo scatenare effetti collaterali in altre parti del software a cui non abbiamo pensato;
  • Aumentano i costi;
  • Il committente non sta pagando per quelle righe di codice.

Il concetto del gold-plating non si applica solo a livello di progetto ma a tutti gli strati di una progettazione software:

  • Se stiamo sviluppando una classe potremmo inserire funzioni non strettamente di sua competenza;
  • In una interfaccia utente potremmo mettere troppe funzioni che ne complicano l’utilizzo;
  • In una tabella di un db potremmo mettere colonne che causano ridondanze che devono essere mantenute per niente.
  • Un metodo di una classe potrebbe voler fare troppe cose e diventare un monolite.

Come programmatori dovremmo sempre essere sull’attenti quando stiamo implementando qualcosa: meno scriviamo e meno danni facciamo, meno danni facciamo e più è alta la probabilità di fare qualcosa che funziona.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.