UML class 图泛化与否?

UML class diagram generalization or not?

教授要求画一个class图,其中包含以下场景的多重性和关系:

A student taking subjects borrow some textbooks as listed in subject syllabus and some reference books which are not listed in subject syllabus.

我知道怎么画出学生和学科之间的关联关系。 但是我不确定是否应该生成 Book class 并为教科书和参考书制作两个子 classes。我的理由是我认为教科书和参考书使用相同的属性和方法。可能不需要泛化。

思考几分钟后,我可能会创建具有公共属性(书名、ISBN 等)的 Book class 并创建另一个 class BookType 来指示图书类型。 但我认为 BookType 可以是 Book class.

的一个属性

我没有具体的想法,谁能给点建议?

总的来说,答案取决于功能需求,但我倾向于不指定教学大纲和参考书之间的区别,因为最终它们仍然是书,没有任何特定的规范或方法。
因此,我将排除泛化和添加类型属性。最多,如果你需要区分这两种书,你可以说 Student 持有两个不同的借书列表,syllabusBooksreferenceBooks.