Mi sono imbattuto nel software di espressione / funzionalità, ma è una cosa reale o dovremmo piuttosto parlare di cose come problemi di prestazioni, memoria e ingombro del disco, esperienza utente e installazione on-demand? Cosa mi manca qui?
Secondo la mia esperienza, è perché le feature bloat sono una causa principale dei problemi piuttosto che un problema diretto che è utile pensarci separatamente.
Oltre ai potenziali problemi per l'utente finale elencati nella domanda originale, le funzionalità gonfiate possono avere costi di manutenzione significativi. Quando si aggiunge una nuova funzionalità, è importante non solo considerare il costo di sviluppo di quella funzionalità, ma mantenerla per tutta la durata del prodotto. La regola spesso citata è che il tempo speso per una funzione è il 20% di sviluppo e l'80% di manutenzione, ma nel mondo reale varia molto a seconda della complessità delle funzionalità e del grado di interazione con altre funzionalità.
Ci sono due significati di questo:
Il primo non riguarda le carenze tecniche, ma l'esperienza dell'utente. Le funzionalità non necessarie rendono più difficile per l'utente capire l'applicazione. L'utente percepirà l'applicazione come troppo complicata e non saprà come fare le cose di base.
In secondo luogo, il fatto di avere troppe funzionalità raramente utilizzate rende il software gonfiabile in termini di memoria e di ingombro del disco. Ecco perché in molte applicazioni hai invece dei plugin, che possono essere installati solo quando effettivamente intendi usarli.
Un termine molto simile è "feature creep". la risposta di vartec è una spiegazione migliore di "feature bloat", ma dovresti anche sapere che cosa significa "feature creep".
Fondamentalmente, mentre un progetto si evolve, c'è spesso la tendenza ad aggiungere più funzionalità al progetto. Questo diventa un serio problema di pianificazione, poiché è impossibile finire mai un progetto che continua a cambiare e aumentare di portata.
Dove "feature bloat" connota più di un problema di esperienza utente, "feature creep" è più un problema di pianificazione.
Penso che il software gonfia e le funzionalità siano gonfie sono due cose diverse.
Una particolare caratteristica potrebbe essere implementata con meno codice, quindi non è la funzione, ma il software che è la radice della causa. Gli sviluppatori devono essere costantemente invitati a non aggiungere funzionalità che non sono state richieste.
Si è tentati di saltare su tutto il numero di richieste degli utenti. Certo, possono chiedere troppo parente alle risorse di sviluppo disponibili, ma i programmatori spesso aggiungono funzionalità proprie. Gli sviluppatori tendono a portare un bazooka a una caccia alle zanzare.
Durante la fine degli anni '90, Microsoft Excel aveva almeno tre, e penso quattro, modi incompatibili tra loro per aggiungere un simbolo di valuta "internazionale" su un numero formattato, ciascuno accessibile dalla propria UI separata.
Quindi, sì, "feature bloat" sicuramente esiste.
Leggi altre domande sui tag terminology