2

我正在尝试创建一个论坛,其中包含创建各种类别主题的用户。其他用户可以发布回复这些是我下面的表格

categories
  id 
  category_title
  category_description
  last_post_date
  last_user_posted

posts
  id
  category_id
  topic_id
  post_creator
  post_content
  post_date 

topics
  id
  category_id
  topic_title
  topic_creator
  topic_last_user
  topic_date
  topic_reply_date
  topic_views

users
  id
  username
  password
  email
  forum_notification

我在为我的论坛创建 uml 类图时遇到问题,但我有点困惑,我可以为用户提供下面的一个图,但我不知道如何创建其余的

  ┌─────────────────────────┬
  │  Users                  │
  ├─────────────────────────┬
  |username: String         |
  |password: String         |
  ├─────────────────────────┼
  |+logIn()                 |
  |+logOut()                | 
  ├─────────────────────────┼
4

1 回答 1

3

首先你应该知道你需要做更多的“行为图”来显示系统应该发生什么,以便更深入地了解如何设计更技术性地描述系统的“结构图”,如果我应该说的话. 行为图的示例是用例图和序列图。

结构图显示了正在建模的系统中的事物。在更专业的术语中,它们显示系统中的不同对象。 行为图显示了系统中应该发生的事情。它们描述了对象如何相互作用以创建一个功能系统。

然后我们必须简要介绍一下您的问题“类图”

类图显示了系统中的类、每个类的属性和操作以及每个类之间的关系。在大多数建模工具中,一个类由三个部分组成,顶部是名称,中间是属性,底部是操作或方法。图表之间的不同关系由不同类型的箭头表示。

举个例子

  ┌─────────────────────────┬
  │  Users                  │
  ├─────────────────────────┬
  │id: int                  |
  |username: String         |
  |password: String         |
  |email: String            |  
  |forum_notification: bool |
  ├─────────────────────────┼
  |+logIn()                 |
  |+logOut()                | 
  |+Reqigster()             |
  |+CreateTopic()           |
  |+EditTopic()             |
  |+AddNewPost()            |
  |+EditPost()              |
  |+DeletePost()            |
  |+SendMessage()           |
  |+ReportIssue()           |
  ├─────────────────────────┼
            | ..1
            |
            |
            |
            |
            | 0..*
  ┌─────────────────────────┬
  │  Posts                  │
  ├─────────────────────────┬
  │id: int                  |
  |category_id: int         |
  |topic_id: int            |
  |post_creator: int        |  
  |post_content: String     |
  |post_date: DateTime      |
  ├─────────────────────────┼
  |+PostDelete()            |
  |+PostUpdate()            | 
  |+UpdateContent()         |
  |+GetViewers()            |
  |+ChangeCategory()        |
  ├─────────────────────────┼

在帖子类上,您将通过将该类与类别和主题类等链接来继续工作。beer 始终牢记,您应该考虑所有实体之间的关系。

祝你好运。

于 2013-01-24T12:24:51.993 回答