一、jive系统分析(1 Jive功能需求)

1  Jive功能需求

Jive功能需求分析类似于一个新系统的需求分析。只有了解Jive系统实现了哪些论坛功能,才能进一步研究和学习它是怎样巧妙、优雅地实现这些功能的。

论坛系统是网络交流的一种主要互动功能系统,如图3-1所示。通过论坛系统,用户可以共同就某个话题不断进行讨论,通过发贴功能发布新的话题,通过回贴功能回复别人的话题。Jive论坛系统可以允许管理员动态地创建新的论坛、编辑论坛的内容、设置论坛过滤信息以及管理注册用户等。

02115053_kQ1Z.gif

3-1  Jive用例图

Jive论坛系统中,用户角色和权限是紧密联系在一起的。主要分两大角色:普通用户和管理员,具体的表现形式是通过权限组合来体现的。管理方面的权限有:

·          SYSTEM_ADMIN,系统管理员,可以管理整个系统。

·          FORUM_ADMIN,论坛管理员,可以管理某个特定的论坛。

·          USER_ADMINGROUP_ADMIN,用户和组管理员,可以管理一些特定用户和用户组。

论坛的读写权限包括:读权限,创建一个新主题,创建一个新的帖子等。

Jive中没有明确定义普通用户和管理员角色,而是直接通过以上权限组合和具体用户直接建立联系,并将这种直接联系保存到数据库中。

在权限不是很复杂的情况下,这种没有引入角色的做法比较简单直接。但由于用户和权限直接挂钩,而用户和权限都可能在不断地动态变化,那么它们之间由于联系太直接和紧密,对各自变化形成了限制。所以,对于复杂的权限系统,引入了基于角色的权限系统,这将在以后章节中进一步讨论。

Jive论坛业务对象主要分为ForumForumThreadForumMessage,它们之间的关系如图3-2所示。

每个论坛Forum包含一系列ForumThread(主题),而每个主题都是由很多内容帖子ForumMessage组成的,这是一个聚集关系。这3种对象中每一个对象都涉及到对象数据的创建、编辑、查询和删除,这些对象数据分别保存在数据库中。这3个对象对于不同的角色可操作访问权限是不一样的,只有系统管理员和论坛管理员可以对Forum相关数据实行操作,普通用户可以创建或编辑ForumThreadForumMessage

Jive论坛为了实现不同用户对不同基本对象的不同操作权限,通过设定一个统一的入口,在这个入口将检查客户端每次对数据的操作权限,如图3-3所示。

02115053_CXyX.jpg   02115053_ZL3c.gif

3-2  基本对象关系图                            3-3  入口示意图

客户端每次对数据库的操作,都要经过ForumFactory入口进入。在ForumFactory中会动态生成一个访问控制代理ForumFactoryProxy,通过ForumFactoryProxy检查客户端访问方法是否符合整体权限访问控制要求。

下面将从ForumFactory作为Jive论坛系统分析入手,结合设计模式逐步分解论坛功能的具体实现。



转载于:https://my.oschina.net/pamgo/blog/651738

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值