Il mio team e io abbiamo progettato un linguaggio di modellazione concettuale semplice e accessibile come parte di un progetto di ricerca più ampio. Questo linguaggio è destinato agli utenti finali con poca o nessuna formazione in tecnologie dell'informazione. Permette loro di creare modelli di classe usando costrutti di base come classi, attributi, associazioni e simili.
Il linguaggio funziona bene, ma stiamo valutando l'opportunità di aggiungere attributi multivalore ad esso. Nel paradigma OO, gli attributi sono generalmente considerati a valore singolo, ovvero possono assumere un valore su ogni istanza di una classe, oppure possono essere nulli, ma non possono mai assumere più valori simultanei. Tuttavia, alcune situazioni in alcuni domini applicativi richiedono attributi multivalore. Ad esempio, immagina una classe di abbigliamento con un attributo Colore. Questo attributo può anche essere multivalore, poiché i capi possono essere multicolore: la maglietta che indosso è di colore bianco e viola.
Tuttavia, pochissimi approcci alla modellazione concettuale OO usano attributi multivalore e nessuno di essi è mainstream per quanto ne so. Mi sembra di ricordare di aver letto che gli attributi multivalore non sono un buon modo di modellare le cose, ma non riesco a ricordare una buona ragione, e non riesco a pensarne una, e mi rifiuto di accettarla al valore nominale. Inoltre, la maggior parte del lavoro che conosco sugli attributi multivalore è a livello di database piuttosto che a livello di modellazione concettuale.
Quindi la mia domanda è: credi che gli attributi multivalore abbiano un senso in un linguaggio di modellazione concettuale? Puoi indicarmi qualsiasi libro, documento o altra fonte che discuti di questo? Grazie.