Lingua Ubiquitous - conflitto tra correttezza e usabilità

10

Una parte fondamentale del Domain Driven Design è l'uso coerente di un linguaggio ubiquitario attraverso il sistema: conversazioni, codice, schema del database, interfaccia utente, test, ecc.

Sono coinvolto in un progetto in cui esiste già una lingua di dominio consolidata, definita da un'organizzazione internazionale per gli standard.

Tuttavia, il lavoro che stiamo svolgendo è per un sito Web pubblico e i termini "corretti" per il dominio non sono necessariamente il modo in cui il pubblico li utilizza e li comprende.

Il compromesso che stiamo utilizzando al momento è quello di utilizzare i termini "ufficiali" ovunque, tranne che nei nostri criteri di accettazione che fanno riferimento a componenti dell'interfaccia utente, in cui utilizziamo i nomi informali.

Questo sembra un approccio ragionevole?

    
posta Andy Waite 22.09.2011 - 22:08
fonte

2 risposte

7

Sì, sembra ragionevole. Se il pubblico previsto non comprende i termini della tua lingua o li interpreta male, allora l'usabilità per l'utente finale ha la precedenza.

Un programma o contenuto che un utente tipico non capisce ha poco valore. Ancora di più, se vuoi solo presentare una punta semplificata di un iceberg perché non sono e non saranno mai esperti di dominio.

Normalmente, quando parli del dominio durante lo sviluppo, tutti comprendono la lingua perché è accurata e tutte le persone fanno parte del dominio. Ma se il valore aziendale viene creato dalla comunicazione di contenuti a estranei del dominio, quindi farlo nel modo più semplice possibile. Usa parole e linguaggi che sono meno probabili di essere fraintesi e usali nell'interfaccia utente.

Mantieni la lingua precisa nel tuo codice e per comunicare con le persone che si occupano del dominio. Queste sono le persone che hanno le specifiche e chi sono gli utenti chiave delle applicazioni, quelle con cui si discutono i dettagli logici di business. Nel raro caso in cui si discuta molto della maggior parte dei dettagli logici aziendali con utenti che non hanno una grande idea del dominio e non è necessario immergersi in esso, quindi incorporare la propria lingua nella lingua del dominio, dato che avere un linguaggio comune, non ambiguo (che probabilmente non è il caso).

Assicurati però che gli sviluppatori di frontend siano a conoscenza dei tuoi termini informali e dei relativi termini di dominio.

    
risposta data 22.09.2011 - 22:20
fonte
1

Penso che il modo più semplice per rispondere a questo sarebbe disegnare la linea esattamente dove la si disegnerebbe se si presentasse l'interfaccia utente in una lingua completamente diversa.

Se i tuoi utenti finali dovevano vedere le cose in sanscrito, in che modo potresti colmare la differenza tra l'interfaccia utente e il codice (e altre comunicazioni interne).

    
risposta data 22.09.2011 - 22:58
fonte

Leggi altre domande sui tag