La proprietà di simultaneità di un'operazione in un oggetto attivo specifica il comportamento del sistema quando un altro oggetto attivo richiama l'operazione.
| Valore di simultaneità | Descrizione |
|---|---|
| Sequenziale | Tale valore è il valore predefinito per la proprietà di simultaneità di un'operazione. Potrebbero verificarsi dei conflitti tra processi simultanei. Gli oggetti chiamanti devono essere coordinati tra di loro in modo che si verifichi una sola chiamata a un'operazione alla volta. |
| Protetto | Più chiamate a un'operazione possono verificarsi simultaneamente, ma una sola può continuare. Le chiamate successive sono bloccate fino al completamento della prima chiamata. I progettisti di sistema dovrebbero garantire che le applicazioni possano bloccare contemporaneamente le chiamate alle operazioni. |
| Simultaneo | Più chiamate a un'operazione possono verificarsi e continuare simultaneamente. |
La proprietà di molteplicità si applica a diversi elementi di modello, ma soprattutto agli attributi che appartengono ai classificatori, alle parti di diagrammi con struttura composte e alle associazioni tra classificatori. La molteplicità di un attributo indica il numero di valori che è possibile associare a tale elemento di modello. Ad esempio, è possibile definire un attributo denominato Attribute1 di un tipo di dati Integer che può avere un intervallo di valori interi compresi tra 0 e 3, ad esempio Attribute1 : Integer [0..3]. Un valore di molteplicità o un intervallo di valori, su un'estremità di un'associazione mostra il numero di oggetti che possono partecipare alla relazione. Una specifica di molteplicità può essere un singolo numero intero positivo, un intervallo di numeri interi positivi specificati da limiti inferiori e superiori o un elenco di numeri interi positivi separati da virgole. Un asterisco indica un limite superiore illimitato. Ad esempio, la seguente tabella contiene diverse specifiche di molteplicità:
| Esempio | Descrizione |
|---|---|
| 1 | Esattamente uno |
| 0..1 | Zero o uno |
| * | Qualsiasi numero, incluso zero |
| n | Qualsiasi numero, incluso zero |
| 1..* | Uno o più |
In un contesto con parametri come una maschera, i limiti inferiori e superiori di una specifica di molteplicità possono essere espressioni che producono valori interi.
Come viene illustrato nella seguente figura, quando i valori di molteplicità vengono associati a un attributo, vengono visualizzati tra parentesi quadre:
![]()
Come viene illustrato nella seguente figura, quando i valori di molteplicità vengono associati a parti nei diagrammi con struttura composta, vengono visualizzati tra parentesi quadre:
![]()
Come viene illustrato nella seguente figura, quando i valori di molteplicità vengono associati a estremità di un'associazione, vengono visualizzati accanto a tale estremità:

È possibile specificare il tipo di un attributo, un'operazione, un parametro e un'estremità di associazione. Il tipo specificato può essere una classe, un tipo di dati UML tra cui numero intero, stringa, numero naturale illimitato o Booleano o un'interfaccia.
Ad esempio, altre classi possono visualizzare e utilizzare gli attributi e le operazioni in una classe con visibilità pubblica. Se attributi e operazioni hanno visibilità privata, solo la classe che li contiene può visualizzarli e utilizzarli.
| Livello | Icone attributo | Icone operazione | Simbolo testo | Descrizione |
|---|---|---|---|---|
| Pubblico | + | Gli elementi di modello che possono visualizzare il contenitore possono visualizzare e utilizzare anche l'elemento del modello pubblico. | ||
| Privato | - | Gli elementi di modello presenti nello stesso contenitore possono visualizzare e utilizzare un elemento del modello privato di tale contenitore. | ||
| Protetto | # | Gli elementi di modello presenti nello stesso contenitore o in un elemento secondario, possono visualizzare e utilizzare un elemento del modello protetto di tale contenitore. | ||
| Pacchetto | ~ | Gli elementi di modello presenti nello stesso pacchetto come contenitore possono visualizzare e utilizzare un elemento del modello con visibilità di pacchetto. |