簡體   English   中英

關於庫UML類圖的問題

[英]Question about UML class diagrams of library

這是一個關於我的 UML 課程作業的簡單問題,我不確定我做了什么。 你能幫我改正嗎,我將非常感謝你的建議:

練習是為圖書館系統設計一個類結構。 它應該滿足這些要求:

  1. 有兩種類型的用戶 - 未成年人和成年人。
  2. 未成年用戶使用其全名和學生卡進行識別。
  3. 成人用戶通過使用他們的全名和身份證來識別。
  4. 圖書館藏書。
  5. 每本書都有基本信息(書名、作者等)。
  6. 用戶最多可同時借閱 4 本書。
  7. 每個用戶都有以前借書的歷史記錄(以及所有日期)

這是我制作的UML圖:

在此處輸入圖片說明

乍一看,該圖與敘述相對應,並附有一些評論:

  • Borrow類可以稱為BorrowedHistory 在同一張圖上有兩個用於不同目的的borrow是混淆的根源
  • 這個班級需要所有的日期:借用的開始日期和借用的歸還日期。
  • 關聯borrow顯示在給定時刻最多借出 4 本書。 但最小值應該是 0(圖書館用戶沒有義務總是有一本書)。 反過來,並不是所有的書都是在某個時間借的:所以它是 0..1

現在這張圖提出了一些問題:

  • 當前借出的書是否已出現在歷史記錄中且歸還日期為空?
  • 如果沒有,我們如何跟蹤借款開始日期。

我沒有跟着你的課,所以我不知道老師的期望。 但這是我建模的方式:

  • 我使用了與關聯類的多對多borrow關聯
  • 歷史信息將在關聯類中
  • 最多可借四本書的限制將用約束表示。

敘述中還包含另一個問題:未成年用戶何時成為成年人? 您的實現關系意味着同一個人將存在兩個不同的用戶(新成年人將丟失歷史記錄)。

出於這個原因,我建議使用在繼承組成:使user一個完整的類,撰寫與Identification ,並提出兩個具體的類adultIdentificationunderageIdentificztion 因此,當未成年用戶成為成年人時,您可以保留用戶的歷史記錄並僅更改識別方式:-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM