2016-03-04 221 views
2

我想问你关于我的类图。我正在为我周末的大学学习做一个简单的门户网站的类图。它制作正确吗?如果我是你,你会改变什么?使用案例,你可以在这里找到Class diagram from use case diagram简单网络门户的UML类图

我应该分别创建每个用户类吗?我指的是Admin类,Redactor类,Moderator类等。我已经使用特权字段(请参阅用户类)来模拟每个用户的角色。这是对的吗?

我想ContentManager类持有用户类实例,它在Article,Announcement,Advertisement和Comment类中用来检查这些动作是否被允许。

enter image description here

我将是你的答案非常高兴。在这里你可以找到WhiteStarUML程序的XML文件my XML file

+0

请在此处移动您的类图。 –

+0

我把它粘贴在上面,但是stackoverflow需要至少有10个声望点才能发布和显示图像。我会请你点击链接。 – Jarmark

+0

我为你编辑它。 –

回答

3

你应该做的是创建一个你的域的分析模型。该模型将包含像ArticleAnnouncement等类,就像您在当前图中所示。举例来说,请参考another answer我最近发布给别人的问题。示出了这个问题的答案该图再次在这里为您提供方便:

enter image description here

请注意我在这个问题的答案提供的模型如何有没有像UserManager或只包含代码来处理其他类别ContentManager。除非人们真的扮演这些角色,否则你不需要这些。注意它在每个协会的末尾都有动词短语和多重性,以告诉你为什么事情是相关的。注意在这些类中没有普通的CRUD操作,比如创建,更新和删除。一旦你建立了一个分析模型,那么你应该将动作分配给适当的类,这通常会反映你的用例。例如,您的Comment类可能有edit()操作。但它可能不会。您可能会考虑在Article类中执行名为replaceComment()的操作(如果这是您的域的工作方式)。我不知道你的域名应该如何工作,因为你错过了一个分析模型,它可以教给我!

完成分析模型后,我会制作一个设计模型,通过解决方案域问题来增强它,例如将用户登录到系统中。 Here is an answer to another question,您可能会发现从分析到设计有帮助。

+0

这只是一个例子。我很难想象我的类图应该如何显示。你能制作一张能帮助我理解我的班级图的绘画吗?我的意思是使用前一篇文章中使用的类名。 – Jarmark

+0

我对你的域名一无所知。你能列出一些事实,就像这个答案中第一组子弹中的那些事实吗? http://stackoverflow.com/a/29462410/2596664 –

+0

一些猜测:作者_writes_许多文章,文章_contains_一个或多个广告,读者_leaves_任意数量的评论,一条评论_annotates_一篇文章,... –