首页 > 其他 > 详细

1.系统建模

时间:2021-02-08 10:41:03      阅读:21      评论:0      收藏:0      [点我收藏+]

今天以腾讯QQ为例(主要为聊天部分),来学习系统建模。

 

1.需求清单

  好友之间互相发消息

  QQ群内与群友交流

  用户和消息管理

 

2.需求总结,即目标

  QQ的使用者:用户

  QQ的功能:一对一聊天和多对多群聊两种情况

  我们现在对以上需求和功能进行总结输出。首先,qq在没有注册的情况下是不能使用的,所以我们的用户没有游客的概念。那我们的用户一共可以分为两种,即普通的软件使用者和对普通用户进行管理的管理员。

  我们从以上需求中可以总结出哪些功能呢?

  对于普通用户而言:

    1.加好友,即查看用户信息并添加用户之间的关联关系。

    2.解除好友,即解除用户之间的关联。

    2.发消息,即用户1v1交流。

    3.历史消息,即用户的消息记录。

    4.创建群组,即作为群组创建者。

    5.加入群组,即加入群组进行用户NvN交流。

    6.解除群组,即解除自己创建的群组。

  对管理员而言:

    1.管理用户,即禁止用户的功能,可以为禁止发消息,禁止加好友,禁止查看历史消息,禁止加群等。

    2.管理消息,即查看或者删除用户或群组历史消息。

    3.管理群组,即创建,封禁,解除群组等

  

  除了以上显性的需求外,可能还存在一些隐性的需求,可能是客户以后会提出,或者开发过程中进行补充,例如用户的黑名单,用户的好友分组,普通用户在群组内的权限等,我们此处暂且不讨论。

3.将以上两步的需求和功能作为输入,我们可以得到下方的用例图

  

  技术分享图片

4.根据以上用例图可以建模

  技术分享图片

 

 

 

 5.根据以上模型图可以建表

  用户表 User: id,name, status,tm

   id: 编号,可用于添加好友

   name: 用户昵称

   status: 用户状态,0-被封禁 1-正常

   tm: 创建时间

  用户关系表UserRelate: id, user1Id, user2Id, status, tm

   user1Id: 一号用户

   user2Id:二号用户

   status: 关系状态 0-已解除 1-正常

   tm: 建立关系的时间

  群组表Group: id, userId, name, status, tm

   userId: 群组创建者,即群组管理员

   name: 群组名称

   status: 群组状态 0-已封禁 1-正常

   tm: 群组创建时间

  群组成员表GroupUser: id, groupId, userId, status, tm

   groupId: 群组id

   userId: 用户id

   status: 用户在当前群组的状态 1-正常 0-被禁止发言

   tm: 加入群组的时间

  管理员表:Employee: id, name, password

   name: 账号

   password: 密码

1.系统建模

原文:https://www.cnblogs.com/gxLog/p/14387027.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!