SSM社区论坛系统----附源码+论文+数据库

SSM社区论坛系统

  

1 引言
1.1 编写目的
1.2 读者对象
1.3 术语解释
1.4 参考资料
2 项目概述
2.1 项目背景
2.2 项目目标
3 系统总体功能
4 业务需求分析
4.1 首页签到业务
4.1.1 首页需求描述
4.1.2 签到流程
4.2 用户模块业务
4.2.1 业务需求描述
4.2.2 登录业务流程
4.2.3 注册业务流程
4.3 导读模块业务
4.3.1 导读业务需求描述
4.3.2 导读功能介绍
4.3.3 导读业务流程
4.4 排行榜模块业务
4.4.1 业务需求描述
4.4.2 业务流程
4.5 帖子模块业务
4.5.1 业务需求描述
4.5.2 业务流程
4.6 好友模块业务
4.6.1 业务需求描述
4.6.2 业务流程
4.7 收藏模块业务
4.7.1 业务需求描述
4.7.2 业务流程
4.8 通知消息模块业务
4.8.1 业务需求描述
4.8.2 业务流程
4.9 管理员模块业务
4.9.1 业务需求描述
4.9.2 业务流程
5 系统功能需求
5.1 系统总用例图
5.1.1 系统中角色分析
5.1.2 功能描述
5.2 详细功能分析
5.2.1 登录
5.2.2 维护用户
6 系统需求优先级
7 非功能需求
7.1 外部接口需求
7.2 法规政策约束
7.3 性能需求
7.4 安全需求
7.5 系统运行需求
7.5.1 软件需求
7.5.2 硬件需求
7.6 文档需求
7.7 其他需求
8 其他事项
  1. 引言
    1. 编写目的

本文编写目的在于规定和控制项目开发的内容,保证本项目的需求分析活动在受控状态下进行,在进行软件开发前,明确本系统应达到的目标,对系统目标做出完整、准确、清晰、具体的要求。保证本需求分析的结果能够完整、无遗漏地反映待开发系统的要求。

    1. 读者对象

主要是面向学校群体

    1. 术语解释

名词/术语/缩写词

解 释

Java核心技术

编写Web项目的所用到的必须Java基础

SSM + shiro框架技术

Mybatis技术+Spring技术+SpringMVC技术+shiro技术

Bootstrap框架

前端主要使用的搭建静态页面框架

Vue、layui框架

前端与后端交互的主要框架

    1. 参考资料

学习并仿造有名的CSDN、百度贴吧等各大论坛的功能优点并针对学校学生爱谈论的有关话题进行设计

  1. 项目概述 

Leek bbs论坛是针对学校的在校学生而设计的软件app,项目初衷,希望学校在校学生能够凭此软件针对自己想要谈论的话题在相应区域进行轻松的进行交流,以及分享和获取自己想要的学习资源。

主要功能流程有,用户在进入该软件后,首先需要先注册并登录,才能使用发帖回帖的功能以及收藏帖子的功能;在未登录的情况下,只能使用一些基本的查看功能。

    1. 项目背景

随着互联网日益深入社会生活,为了更好的交流,用户想要就自己的生活和爱好和其他用户进行及时的交流,就有了BBS 论坛,这样我们就可以在网络这个虚拟的空间中方便地实现交流。通过BBS系统可随时取得各种最新的信息;也可以通过BBS系统来和别人讨论学习....等等各种有趣的话题;还可以利用BBS系统来发布一些“告白”、 “求职应聘”等启事;更可以召集亲朋好友到聊天室内畅所欲言.....

    1. 项目目标

开发bbs论坛软件初衷,希望用户能够给发表自己的帖子以及评论自己的帖子、分享自己的学习资源,用户之间还能进行私聊、修改自己的信息等,最主要的还是希望学校在校学生能够凭此软件针对自己想要谈论的话题在相应区域进行轻松的进行交流并且软件能良好的运行。

  1. 系统总体功能

图 系统功能结构图

  1. 业务需求分析
    1. 首页签到业务
      1. 首页需求描述

用户进入首页,在未登录状态下,显示部分热帖排行、精华内容排行、最新发表排行、最新回复排行、显示所有版块以及每个板块的帖子总数。当用户点击签到功能,则需要用户进行登录才能使用签到功能

      1. 签到流程

       

    1. 用户模块业务

      1. 业务需求描述

用户模块所有业务包括:用户登录、用户注册、用户个人信息修改

      1. 登录业务流程

       

      1. 注册业务流程

       

 

    1. 导读模块业务
      1. 导读业务需求描述

用户可以通过查看帖子中的最新热门,最新发表,最新回复,最新精华筛选方式分别查看自己想要查看的帖子,在看帖子的同时还可以看到发表帖子的大略信息,头像,网名等,也可通过博主资料卡片将博主加为好友,也可关注该博主,以及给该博主发送消息,留言等操作

      1. 导读功能介绍

       最新热门:筛选出最新发出来的帖子,通过回复/查看的次数降序排列,依次展现在页面上

   最新精华:将文章按转发次数降序排列

   最新回复:筛选出最新有过回复的帖子

   最新发表:按帖子发表的时间先后,降序排列在页面上供读者阅读

   我的贴子:可以查看自己发出的帖子

   板块/群组:显示帖子所属模块

   作者:帖子的作者

   回复/查看:帖子的被评论,查看等次数

   最后发表:帖子发表的时间

发表最新主题:发表自己的博客

用户选择自己所要发表文章的类别后,可跳转至发帖页面.

发表最新主题时必须完成一下功能:

1)检查用户是否已登录,未登录则转到登录页面

2)检查用户是否选择发表模块

      1. 导读业务流程

       

    1. 排行榜模块业务
      1. 业务需求描述

用户排行:好友数排行,对每个用户的好友数进行排行;发帖数排行,对每个用户的发帖数进行统计排行;日志数排行,根据日志数排行。

帖子排行:回复排行,根据帖子回复数量来排行;查看排行,根据用户对该帖子的查看次数进行排行收藏排行热度排行分享排行。

板块排行:发帖排行,根据每个板块的发帖总数对版块进行排行;回复排行,根据每个板块的回复总数对版块进行排行;今日发帖排行,根据每个板块今日发帖总数对版块进行排行。

效果图:

      1. 业务流程

       

    1. 帖子模块业务
      1. 业务需求描述

发帖回帖

点击发布按钮,进入编辑页面发布自己想要分享的内容; 点击回复,楼主或其他用户会收到一个通知,看到你评论的内容,以及做出一个回复。

收藏,分享,评分,顶等操作

收藏:点击收藏按钮,可将你感觉有趣或有用的帖子收进属于自己的收藏夹,

分享:点击分享按钮,好友会在你的动态或是好友动态见到你分享的内容,自己可在个人动态见到.

评分:评分是对阅读这篇帖子的评价,如果你感觉这篇帖子写的很不错,你可以进行奖赏,可奖赏的物品,例:金币,等

顶:可以提高它处在排版的一个位置,如果它顶超过了上面一楼,它就会在它上面啦

显示楼主以及回复用户部分信息(帖子排版)

它会有一个标识.发帖第一楼是楼主,评论属于第二楼,沙发标识,第三楼是板凳,第四楼是凉席,其余是地下室。

关注发帖回帖的用户

如果感觉一个用户帖子异常有趣,或是朋友之间什么的,可点击关注此用户,你将可以看见它的最近动态…

      1. 业务流程

       

    1. 好友模块业务
      1. 业务需求描述

 I:好友请求

别人添加用户时,在此模块中,用户可以选择同意添加,如果添加则在两人的好友列表中加入对方,用户也可以选择拒绝添加,如果选择拒绝,则添加请求失效,

II:好友列表

在好友列表模块中,用户可以查看自己已添加的其他好友,并且查看当前用户是否在线状态

I:好友分组模块

分组模块是在列表模块下的衍生,在分组模块中,用户可以对添加的好友进行分组管理

II:黑名单

在此模块中,用户可以将用户的好友拉进黑名单,拉进黑名单的好友,用户则无法在接收到对方的一切信息,例如:聊天内容,发布的帖子等

用户也可以将已在黑名单中的好友重新添加进好友列表

III:查找好友模块

I:好友列表中查找好友:

用户可能由于添加好友过多无法准确寻找,此功能模块可以帮助用户通过备注或者ID快速查找到该好友

II:陌生人查找好友

用户可以通过E-mail,ID,昵称等在以注册此论坛的用户中查找到该用户并添加该用户

      1. 业务流程

       

    1. 收藏模块业务
      1. 业务需求描述

此模块共分为四个小模块:

全部收藏:此小模块中包含了用户收藏的所有东西,如”帖子”,”板块”,”日志”.

帖子:此小模块用于展示用户收藏的帖子

板块:此小模块用于展示用户收藏的板块

日志:此小模块用于展示用户收藏的日志

      1. 业务流程

       

    1. 通知消息模块业务
      1. 业务需求描述

用户可以查看消息查看好友发送的信息和群信息还可以进行对好友和群信息的发送,还可以进行消息的设置屏蔽不想看到的好友信息,还可以查看自己发布的帖子和自己点评过别人的帖子,和自己参与过的活动和悬赏等.还可以与坛友互动查看不是好友的留言和好友发送的信息,查看自己评论,点赞,分享的帖子,接受系统发过来的信息  

      1. 业务流程

       

    1. 管理员模块业务
      1. 业务需求描述

提供对用户的基本增删改功能;

对管理员的资料修改功能;

对帖子的管理提供基本的增删改功能;

对版块以及版主的管理提供基本的增删改功能。

      1. 业务流程

      

  1. 系统功能需求

注册用户输入账号密码登录系统,进入首页模块,可以看到所有版块、热门推荐、精华推荐等以及使用签到、查看个人信息功能,进入某一个版块后,可以看到这个版块的所有帖子,再进入帖子详情页后,可以对该帖子进行评论回复以及对某一楼的用户使用关注和私聊功能、查看个人资料详情。

    1. 系统总用例图

      1. 系统中角色分析

系统中分别有普通用户版主管理员等角色。

普通用户:具备对论坛进行帖子发表以及帖子回复的基本功能;

版主:对论坛的某一个版块以及版块中的帖子进行管理功能;

管理员:拥有系统的基本所有权限,可以添加删除版主、添加删除版块

以及对版块的帖子进行移动功能等等

      1. 功能描述

导读: 推荐一些内容,例:最新热门,最新精华,最新回复,最新发表

排行榜:对用户所在网站所做的一些操作进行一个排行,例如:回复数,浏览数,发帖数.

签到:签到一天,会加一些积分,会有个计数制,天数越多等级越高

个人资料:对你在网站一些操作的统计,例:发帖数,昵称

动态:记录一些自己在网站上的操作,以及(关注)好友的,例:某不知名网友终于更新了自己的昵称.

好友聊天: 如果好友在线,你就可以和她聊天啦,类似qq气泡式聊天.

版块

三个专区:

本坛有三个专区,校园专区,交流与讨论,论坛事务

帖子

发表:

选择某一版块,可发布属于那个版块的新帖

回复:其他用户可以评论,以及可以用户可以进行回复.

分享:可以分享到自己的动态

    1. 详细功能分析
      1. 首页

模块名称:

首页模块

模块ID:

001

角色:

游客或者注册用户

用例说明:

显示部分热帖排行、精华内容排行、最新发表排行、最新回复排行、显示所有版块以及每个板块的帖子总数。当用户点击签到功能,则需要用户进行登录才能使用签到功能

基本事件流:

  1. 用户请求发表留言

其他事件流:

留言内容验证不符合规则,给出提示信息,要求重新输入

异常事件流
 

系统显示板块时岀现系统故障,如网络颉章,服努器故障,系统弹出“系统异常页面”,提示游客或用户网络异常

      1. 用户签到

模块名称

用户模块

模块id

002

角色

普遍用户

模块描述

已注册用户在首页使用签到功能

前置条件

已登录用户

后置条件

基本事件流

  1. 进入首页页面
  2. 用户登录

3、进行签到

4、签到成功

5、显示连续签到天数以及签到总天数

      1. 用户注册

模块名称

用户模块

模块id

003

角色

游客

模块描述

游客注册成为论坛普通会员

前置条件

用户账号、邮箱未被注册

后置条件

基本事件流

  1. 进入注册页面
  2. 输入注册信息

3、查询账号、邮箱是否被注册

4、注册成功

      1. 用户登录

模块名称

用户模块

模块id

004

角色

游客

模块描述

游客登录论坛

前置条件

用户未登录

后置条件

基本事件流

1进入登录页面

2输入账号密码登录

3、查询账号是否存在

4、判断输入的密码是否正确

5、登录成功

      1. 个人资料修改

模块名称

用户模块

模块id

005

角色

普遍用户

模块描述

用户修改一些基本信息

前置条件

用户已经登录

后置条件

基本事件流

1进入个人资料页面

2、弹出登录页面

          3、输入账号密码登录,登录成功

4、修改基本信息

5、个人资料修改成功

      1. 头像上传

模块名称

用户模块

模块id

006

角色

普遍用户

模块描述

用户上传头像,更新头像

前置条件

用户已经登录

后置条件

基本事件流

1进入个人资料页面

2、弹出登录页面

3、输入账号密码登录,登录成功

4、上传头像

5、图片上传成功

      1. 帖子筛选

模块名称:

导读模块

模块ID:

007

角色:

所有用户

用例说明:

用户按条件筛选帖子

前置条件:

无条件

基本事件流:

  1. 最新热门:筛选出最新发出来的帖子,通过回复/查看的次数降序排列,依次展现在页面上
  2. 最新精华:将文章按转发次数降序排列
  3. 最新回复:筛选出最新有过回复的帖子
  4. 最新发表:按帖子发表的时间先后,降序排列在页面上供读者阅读
  5. 我的贴子:可以查看自己发出的帖子

后置条件:

      1. 发表主题

模块名称:

导读模块

模块ID:

008

角色:

所有用户

用例说明:

用户发表新主题

前置条件:

用户已登录

基本事件流:

  1. 进入导读页面
  2. 发表新主题
  3. 选择板块
  4. 输入发表内容
  5. 发表成功

其他事件流:

发表新主题时,检查是否登录,未登录提示要求登录,用户发表内容与版块不符的内容

异常事件流
 

发表新主题时岀现系统故障,如网络颉章,服努器故障,系统弹出“系统异常页面”,提示用户发表失败

后置条件:

系统保存了发表的主题

      1. 排行榜查看

模块名称:

排行榜

模块ID:

009

角色:

游客或已注册用户

用例说明:

用户排行:好友数排行,对每个用户的好友数进行排行;发帖数排行,对每个用户的发帖数进行统计排行;日志数排行,根据日志数排行。

帖子排行:回复排行,根据帖子回复数量来排行;查看排行,根据用户对该帖子的查看次数进行排行收藏排行热度排行分享排行。

板块排行:发帖排行,根据每个板块的发帖总数对版块进行排行;回复排行,根据每个板块的回复总数对版块进行排行;今日发帖排行,根据每个板块今日发帖总数对版块进行排行。

基本事件流:

  1. 进入首页
  2. 进入排行榜
  3. 显示用户排行、帖子排行、板块排行
  4. 查看自己想看的类型

其他事件流:

异常事件流
 

系统显示排行时岀现系统故障,如网络颉章,服努器故障,系统弹出“系统异常页面”,提示用户网络出现问题

      1. 收藏查看

模块名称:

收藏模块

模块ID:

010

角色:

已登录的用户

用例说明:

用户对喜欢的帖子进行收藏

前置条件:

已经登录

基本事件流:

  1. 全部收藏:此小模块中包含了用户收藏  的所有东西,如”帖子”,”板块”,”日志”.
  2. 帖子:此小模块用于展示用户收藏的帖子
  3. 板块:此小模块用于展示用户收藏的板块
  4. 日志:此小模块用于展示用户收藏的日志

其他事件流:

收藏日志时,检查是否登录,未登录提示要求登录

异常事件流
 

系统收藏博文时岀现系统故障,如网络颉章,服努器故障,系统弹出“系统异常页面”,提示用户收藏帖子失败

后置条件:

      1. 通知查看

模块名称:

通知消息模块

模块ID:

011

角色:

已登录的用户

用例说明:

用户接收消息

前置条件:

已经登录

基本事件流:

  1. 查看所有消息,包括私人消息,及公共消息以及发送消息
  2. 我的帖子: 查看自己发布的帖子和自己点评过别人的帖子
  3. 坛友互动: 查看不是好友的留言和好友发送的信息,查看自己评论,点赞,分享的帖子
  4. 系统提醒: 接受系统发过来的信息  

其他事件流:

检查是否登录,未登录提醒登录

异常事件流
 

系统发送消息时岀现系统故障,如网络颉章,服努器故障,系统弹出“系统异常页面”,提示用户发送消息失败

后置条件:

      1. 帖子发表

模块名称:

帖子模块

模块ID:

012

角色:

已注册登录用户

用例说明:

用户发表帖子及回复评论

前置条件:

用户已注册

基本事件流:

  1. 用户请求发表所属版块帖子
  2. 系统收到通知消息有其他用户评论
  3. 回复其他用户评论

其他事件流:

 用户发表内容与版块不符的内容

异常事件流

系统保存帖子时岀现系统故障,如网络颉章,服努器故障,系统弹出“系统异常页面”,提示用户发表帖子失败

后置条件:

系统保存了帖子

      1. 用户留言

模块名称:

用户模块

模块ID:

013

角色:

已注册登录用户

用例说明:

用户发表留言

前置条件:

用户已注册

基本事件流:

  1. 进入留言页面
  1. 用户请求发表留言
  2. 用户输入留言内容,用户选择“发表”
  3. 系统验证留言内容的格式
  4. 系统保存用户留言

其他事件流:

留言内容验证不符合规则,给出提示信息,要求重新输入

异常事件流
 

系统保存博文时岀现系统故障,如网络颉章,服努器故障,系统弹出“系统异常页面”,提示用户发表留言失败

后置条件:

系统保存了用户留言

      1. 用户私聊

模块名称:

好友模块

模块ID:

014

角色:

已注册登录用户

用例说明:

用户与好友在线聊天

前置条件:

用户已登陆

基本事件流:

  1. 进入帖子详情页
  2. 点击发送消息
  3. 弹出聊天页面
  4. 显示用户在线状态
  5. 输入聊天内容
  6. 点击发送消息
  7. 消息发送成功

其他事件流:

用户不在线

异常事件流

用户收不到其他用户发的消息.

后置条件:

系统保存了聊天消息

      1. 添加好友

模块名称:

好友模块

模块ID:

014

角色:

已注册登录用户

用例说明:

用户添加好友

前置条件:

用户已登陆

基本事件流:

  1. 进入其他用户个人资料页面
  2. 点击添加好友
  3. 选择好友分类
  4. 等待好友同意
  5. 好友添加成功

其他事件流:

用户好友已经存在

异常事件流

用户未收到好友请求消息.

后置条件:

系统保存了好友请求记录

      1. 删除好友

模块名称:

好友模块

模块ID:

015

角色:

已注册登录用户

用例说明:

用户删除好友

前置条件:

用户已登陆

基本事件流:

  1. 进入好友管理页面
  2. 点击删除好友
  3. 提示用户是否确定删除该好友
  4. 确认删除成功

异常事件流

用户删除好友失败

后置条件:

系统修改了好友记录

      1. 管理员登录

模块名称

管理员模块

模块id

016

角色

管理员

模块描述

管理员登录论坛后台管理论坛

前置条件

管理员未登录

后置条件

基本事件流

1进入登录页面

2输入账号密码登录

3、查询账号是否存在

4、判断输入的密码是否正确

5、登录成功

      1. 管理员修改个人资料

模块名称

管理员模块

模块id

017

角色

管理员

模块描述

管理员修改一些基本信息

前置条件

管理员已经登录

后置条件

基本事件流

1进入个人资料页面

2、弹出登录页面

        3、输入账号密码登录,登录成功

4、修改基本信息

5、个人资料修改成功

      1. 管理员头像上传

模块名称

管理员模块

模块id

018

角色

管理员

模块描述

用户上传头像,更新头像

前置条件

管理员已经登录

后置条件

基本事件流

1进入个人资料页面

2、弹出登录页面

3、输入账号密码登录,登录成功

4、上传头像

5、图片上传成功

      1. 帖子管理

模块名称

管理员模块

模块id

019

角色

拥有版主或管理员权限的账号

模块描述

管理员对用户所发帖子进行一系列的管理操作

前置条件

管理员已经登录

后置条件

基本事件流

  1. 可删除不符合要求的帖子
  2. 可以将帖子进行所在版块间的移动
  3. 可以更改帖子的状态,如:热门,精华,置顶等
  4. 可以对用户举报贴子进行处理

      1. 用户管理

模块名称

管理员模块

模块id

020

角色

拥有管理员权限的账号

模块描述

管理员对用户的一些管理

前置条件

管理员已经登录

后置条件

基本事件流

  1. 对所有违规用户进行封号
  2. 对所有用户的账户管理,例如,重置密码等

      1. 权限管理

模块名称

管理员模块

模块id

021

角色

拥有管理员权限的账号

模块描述

管理员对用户权限的控制,以及对用户的授权

前置条件

管理员已经登录

后置条件

基本事件流

  1. 对用户的增删改查权限的控制
  2. 添加版主,获得身份的用户则可获得对对应版块帖子管理的权限
  3. 接收版主对板块修改的信息的提示

      1. 版块管理

模块名称

管理员模块

模块id

022

角色

拥有管理员权限的账号

模块描述

管理员版块的管理

前置条件

管理员已经登录

后置条件

基本事件流

  1. 对论坛版块的增,删,改查的绝对操作
  2. 对版主的增加,修改,删除等操做

  1. 系统需求优先级

需求编号

功能名称

优先级

说明

001

用户模块

1

用户注册登录

002

首页模块

2

帖子所有分类

003

帖子模块

1

发帖回帖

004

导读模块

2

推荐显示帖子

005

排行榜模块

3

显示用户排行、帖子排行、板块排行

006

好友模块

1

加好友以及在线聊天

007

收藏模块

2

收藏帖子、板块、日志

008

通知板块

3

广告、公共推送

009

管理员模块

1

对系统的管理

  1. 非功能需求

1精度 :要求系统只要不出现严重bug,不存在后台代码报错!

2时间特性要求 :关于时间的要求,一般都是跟随用户当前的系统时间,因此也没有其他的硬性要求;

3灵活性 :要求客户输入灵活,操作方便;

    1. 外部接口需求

暂时不提供对外接口

    1. 法规政策约束

    1. 性能需求

    1. 安全需求

    1. 系统运行需求
      1. 软件需求

名称

版本

语种

操作系统

Windows

Win7及以上

简体中文

客户端

Chrome Google

8.0及以上

简体中文

数据库平台

Mysql

5.6及以上

简体中文

开发工具

IDEA

2018及以上

英文

服务器

Tomcat

8.0及以上

英文

      1. 硬件需求

硬件配置

最低配置

推荐配置

服务器

1CPU:P4 2.0G

1CPU:P4 2.8G

Mem:1G

Mem:2G

HD:40G

HD:120G

  1. 其他事项

暂无

  • 23
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱摄影的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值