Class 为博客系统绘制UML类图
我试图绘制一个简单博客系统用例图的对应UML类图,如下所示: 要绘制类图,应该有两个类:User和Blog。但是我很难画出它们之间的联系,因为在这两个类之间的关系中可能有两种不同的多样性。例如,当用户创建博客时,类图如下所示: 但就用户浏览博客而言,多样性是不同的,因为某个博客不仅可以被一个用户浏览,所以类图如下所示:Class 为博客系统绘制UML类图,class,uml,class-diagram,Class,Uml,Class Diagram,我试图绘制一个简单博客系统用例图的对应UML类图,如下所示: 要绘制类图,应该有两个类:User和Blog。但是我很难画出它们之间的联系,因为在这两个类之间的关系中可能有两种不同的多样性。例如,当用户创建博客时,类图如下所示: 但就用户浏览博客而言,多样性是不同的,因为某个博客不仅可以被一个用户浏览,所以类图如下所示: 那么,我如何在解决方案域中解决这个问题呢?类之间的关联不会显示所采取的操作。这只是表明它们是相关的 创建和视图是用户执行的不同操作。Create很可能指的是一个服务器,它有
那么,我如何在解决方案域中解决这个问题呢?类之间的关联不会显示所采取的操作。这只是表明它们是相关的
创建
和视图
是用户执行的不同操作。Create
很可能指的是一个服务器,它有一个Create
方法,还有一个retrieveBlog
,因此可以显示它(视图将管理它)
使用序列图显示行为部分(如我在回答您的另一个问题时所建议的)。除了Thomas的答案之外:
- 一件确定的事情是
和用户
之间的结构1对多关系。但这是比用例分析更隐含的知识:您的系统必须跟踪博客
的链接以及创建它的博客
,以便使他能够在以后进行更新和删除李>用户
- 然而,许多博客系统也会跟踪
用户咨询的
(衡量受众、跟踪历史等)。所以,您的系统也可以跟踪查看情况(但也可以不使用)李>博客
用例分析的更系统的方法是使用该方法,并在设计中使用以下类别:
- 实体:持久数据:
和Blog
如上所述User
- 边界:用例和参与者之间的链接:
和CreateOwnBlog
ViewBlog
- 控件:在两个世界之间调解类:
和ViewingSubsystem
AuthoringSubsystem
Blog
类有一个名为Owner的属性来存储创建它的用户,那么“Create”关联应该在那里。如果Blog
有另一个名为Visitors的集合属性来存储User
的集合,那么View
关联也是有意义的。您没有按应有的方式使用关联。它们与行为无关。我可以推荐阅读Geerts关于关联的博客:我认为你给我的文章不太清晰,因为可读性差,但我们不需要讨论太多,应该回到主题上来。根据我目前的理解,是否应该有某种关联实际上取决于系统需求。在我的例子中,如果系统需要跟踪用户查看的博客
,比如在博客
中存储用户
(访问者)的集合,那么查看关联是有意义的。否则它就不应该存在。看看克里斯托夫的答案。