Un classificatore può contenere zero o più operazioni. Le operazioni definiscono la funzionalità di un'istanza di un classificatore, generalmente una classe, ma anche di altri classificatori, tra cui casi d'uso o componenti.
È possibile aggiungere le operazioni per identificare la funzionalità di diversi tipi di classificatori nel proprio modello. Nelle classi, le operazioni sono implementazioni di funzioni o che un oggetto potrebbe dovere eseguire. Le operazioni ben definite eseguono una singola attività.
Ogni operazione in un classificatore deve avere una firma univoca. Una firma comprende il nome dell'operazione e il relativo elenco ordinato di tipi di parametri. La sintassi UML per un nome operazione è la seguente:
visibilità «stereotype» nome(elenco parametri) : tipo-restituzione
Ad esempio, in un'applicazione e-commerce, la classe Customer dispone della seguente operazione: - getBalance([in] day: Date) : MoneyType. La firma dell'operazione descrive le informazioni nella seguente tabella:
| Parte della sintassi | Esempio | Descrizione |
|---|---|---|
| visibilità | - | Il simbolo meno indica che l'operazione ha visibilità privata. Non può essere chiamata da altre classi. |
| nome | getBalance | Il nome descrive l'operazione in base al servizio che fornisce. |
| elenco di parametri | ([in] day: Date) | L'operazione dispone di un parametro di input denominato day seguito dal relativo tipo, Date. È possibile visualizzare la firma completa (incluso l'elenco di parametri) o solo il nome dell'operazione. |
| tipo-restituzione | : MoneyType | Il tipo restituito dall'operazione è un'istanza della classe MoneyType. |
In un'applicazione e-commerce, una classe Cart aggiunge e rimuove merce da un carrello per la spesa virtuale. Un'operazione, ad esempio addItem( ), aggiunge la merce al carrello e un'operazione removeItem( ) la rimuove.