UML建模中涵盖如下内容:用例图、类图与对象图、顺序图、活动图、状态图、通信图及构件图。
其主要涉及的关系包括:主从关系、扩展关系和泛化关系。
在UML图中,旁边的对象通常以参与者角色存在。
包含关系,如登记外借信息,其必要操作涉及用户登录,因此采用包含关系进行建模。
UML中的关系还包含依赖关系、泛化关系、组合关系和聚合关系。
组合与聚合同为关联关系的表现形式,其中菱形表示聚合关系的存在。
泛化是对类进行抽象的过程,而实现则是对接口的具体化。
书籍列表与书籍之间形成的是聚合关系,而计算机书籍与非计算机书籍与书籍之间的关系则是泛化关系。
在UML图中,箭头用于表示不同的关系。
例如,在继承关系中,A代表艺术家,C代表乐队和D代表歌手,均继承自艺术家这一概念。
关于C为何为乐队,这是因为多个歌手聚合形成乐队,菱形代表整体一方,故C表示乐队。
那么艺术家会演奏什么呢?答案是演奏B歌曲。
每个歌曲由E音轨构成,而多个音轨则组成F唱片。
问题一:艺术家可能是独唱的歌手或由两名及以上歌手组成的乐队。一个歌手可以不属于任何乐队或属于一个或多个乐队。
询问他们的多重度是多少?
对于D歌手的多重度表示,因其可能不隶属于任何乐队,也可能属于一个或多个乐队,故多重度为0--。
而C乐队的多重度表示,表示乐队可包含多个歌手,故多重度为2--。
一条音轨上通常只含有一首歌曲或为空缺状态。而一首歌曲则可能分布在多条音轨上,同一歌曲在唱片中仅会出现一次。
对于B歌曲、E音轨和F唱片的多重度关系如下:以音轨为主体,因一条音轨仅含一首歌或为空缺,故其多重度为0--1;以歌曲为主体,因一首歌可分布在多条音轨上,故其多重度为1--;以唱片为主体,因唱片由多条音轨构成,故其多重度也为1--。
每条音轨都有明确的起始位置和持续时间。在唱片中,音轨的次序至关重要。播放器需准确识别每条音轨的上一条和下一条音轨(可能不存在)。
为类track添加0--1的多重度,表示track两端均为音轨关系。