为Web论坛制作UML类图

时间:2013-01-24 11:30:00

标签: uml class-diagram

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

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()                | 
  ├─────────────────────────┼

1 个答案:

答案 0 :(得分: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()        |
  ├─────────────────────────┼

在帖子课上,您将通过将该课程与类别和主题课程等相关联来继续工作。啤酒总是要记住你应该考虑所有实体之间的关系。

祝你好运。