Molte persone hanno questa domanda quando iniziano a utilizzare UML, specialmente quando provengono da un'altra notazione in cui i nomi vengono sempre letti in senso orario, indipendentemente da quale estremità della linea si trovano. Quello è veramente che confonde!
Red Beard è corretto, sebbene la specifica UML non dichiari esplicitamente dove sono scritte le informazioni di fine di associazione (cioè, nome e molteplicità), lo implica in diversi punti. Ad esempio, le Figure 7.11 (che mostrano gli attributi) e 7.12 (che mostrano associazioni unidirezionali con l'associazione termina vicino alle punte di freccia) sono equivalenti di proprietà delle proprietà; quindi, la molteplicità si avvicina di fatto al tipo della proprietà.
Un modo in cui ho imparato a ricordare quale fine ha quale molteplicità è immaginare un grafo unidirezionale di istanze e scrivere il numero accanto alle punte di freccia che puntano al bersaglio.
BTW, è necessario utilizzare nomi di associazione descrittivi. Spesso si trasformano in nomi di attributi in Java, nomi di elementi in XSD e così via. Ad esempio, in Java, la classe Madre potrebbe avere un attributo "bambini" di tipo "Set <Child>". Se non li chiami, riceverai spesso nomi di default indesiderati.
fonte
2013-07-18 18:52:40
Se hai già familiarità con la notazione ** Merise **, beh, UML fa esattamente il contrario per le cardinalità. Quindi il tuo primo esempio sarebbe corretto in un diagramma Merise. – Attila