2014-07-21 88 views
1

這個問題是關於分析階段的UML類圖。 我做了一個小例子,用於說明目的:建模UML類圖中的唯一關係

UML diagram

一票有效期爲一個座位和一個特定的研討會。 座位可以分配給多張票,但只能分配給一個獨特的票/研討會組合。 (研討會和獨特的票/座位組合也是如此)。

該圖不反映這一點。我用紅色標出了錯誤的多重性。

你知道什麼樣的選擇(越多越好)來正確建模需求?

回答

1

這種交換一致性檢查不能用UML或實體關係圖來表示。順便說一下,您無法表示從票證實例中,路徑票證 - >座位 - >研討會地點必須導致與票證 - >研討會 - >研討會地點相同的實例。

形式上,你用紅色標出的多重性是正確的。一個座位看到不止一張票,僅用於不同的研討會,反之亦然。

因此,我可以提供的唯一解決方案是將要求包含在這些關係的文本說明中。這不是一件壞事,因爲任何有限的圖形符號集都只能表達所有可能需求的一個子集。

1

機票可能是座位和研討會之間的關聯類。或者只是使用OCL來表達這個約束

0

「您無法表示,從票證實例中,路徑票證 - >座位 - >研討會地點必須導致與票證相同的實例 - >研討會 - >研討會位置」

1)OCL - 上下文票務INV:seminar.seminarLocation = seat.seminarLocation

2)繪製座椅和研討會之間座椅,研討和關聯類票 - 到上課地點(圖13-70 http://msdl.cs.mcgill.ca/people/tfeng/docs/The%20Unified%20Modeling%20Language%20Reference%20Manual.pdf或圖14-84 http://www.utdallas.edu/~chung/Fujitsu/UML_2.0/Rumbaugh--UML_2.0_Reference_CD.pdf