Secondo la tua domanda e i commenti aggiuntivi alla risposta di @ Klee, penso che il problema sia un po 'diverso.
Hai completato una storia. Significa che hai passato tutte le definizioni di fatto, altrimenti la user story non può essere considerata completata. Ma se hai completato la storia e passato tutte le definizioni di fatto dovrebbe significare che la tua soluzione attuale è soddisfacente. In caso contrario, il proprietario del cliente / prodotto deve aumentare il motivo per cui non è soddisfacente (non tu) e rifiutare il completamento o definire un'altra storia utente estendendola con una nuova definizione di completamento che non è soddisfatta dalla soluzione corrente.
Il debito tecnico viene generato solo quando la tua soluzione corrente non soddisfa alcuni requisiti o vincoli. C'è qualche vincolo che hai violato usando una soluzione alternativa? Se sì, non dovresti contrassegnare la tua user story come completata in primo luogo.
C'è qualche duplicazione di codice o un'altra cattiva pratica introdotta dalla tua soluzione alternativa? Quindi hai creato un debito tecnico e dovresti risolverlo il prima possibile. Puoi essere equo con il proprietario del prodotto e dirgli semplicemente che durante il prossimo sprint devi passare lo stesso tempo a risolvere i tuoi problemi tecnici che si tradurranno in storie utente meno pianificate. O se la tua relazione con il proprietario del prodotto non è molto buona, pianifica meno storie utente a causa di "nuove" scoperte complessità in ognuna di esse e correggi il tuo debito tecnico.
Se non vi è alcuna duplicazione di codice o una vera ragione per cui il tuo codice dovrebbe essere migliorato, semplicemente non toccarlo. Per il vero motivo, intendo nessun vincolo definito dal cliente / proprietario del prodotto (ad esempio politica aziendale, prestazioni, tempo predefinito per la creazione di un nuovo modello di posta elettronica che non può essere raggiunto con la soluzione corrente, ecc.). Non c'è debito tecnico nel tuo codice. Quello che stai cercando di fare è chiamato golden plating - fornire funzionalità che non erano necessarie = sprecare risorse per i clienti.
Se la tua soluzione non soddisferà alcuna storia utente futura, sposta semplicemente il tuo refactoring e il codice in miglioramento in quella user story. Non deve essere risolto ora perché ha superato la definizione corrente di fatto. Affrontare i miglioramenti quando devono essere fatti per passare la definizione di fatto per le storie appena implementate e per evitare le cattive pratiche.