Violet音乐社区设计文档

Violet音乐社区设计文档

需求分析文档:http://www.javashuo.com/article/p-xlnrscxf-nt.htmlhtml

1、引言

1.1 编写目的

此文档为“Violet”音乐社区开发团队的指导文档。开发人员阅读此文档有助于团队间合做,同时提升软件质量。开发者应仔细阅读此文档,根据文档需求来进行开发,达到预期功能与效果。数据库

1.2 开发背景

音乐是一门艺术,是由有组织的乐音来表达人们情感、反映人类现实生活情感的艺术。现代科技的发展使得人们能够利用网络随时随地的享受音乐,然而在当今互联网却不多有一个以音乐为媒介的社交平台。本开发团队想以“音乐+社交”的形式,开发一款集听歌、交友和讨论为一体的网上社区——“Violet”音乐社区。Violet多指紫罗兰,也可形容羞怯的人,本团队旨在经过此平台加强人们对音乐的交流,同时拉近人与人之间的距离。网络

2、用例图设计

2.1游客实例设计

  • 搜索歌曲: 游客在首页搜索栏输入歌曲名称,网页显示歌曲中包含游客输入的搜索信息的歌曲。post

  • 搜索相应歌手的歌曲: 游客在首页搜索栏输入歌手名称,网页返回该歌手下对应的歌曲。网站

  • 浏览评价: 游客在点击具体某一首歌以后能够在网页下方浏览该歌曲的相应的评论。设计

2.2 管理员实例设计

  • 添加歌曲到曲库:添加歌曲(包括:歌曲名称,歌手,歌曲图片或歌手图片)到曲库中。3d

  • 下架歌曲:应一些版权方要求或歌词中含有一些不良信息或敏感信息而从曲库中下架歌曲。htm

  • 限制用户评价歌曲:当某用户发布的评价被其余用户举报(使用不文明词汇,发布不良信息或敏感信息,发布反动言论)且核实后,封禁相应用户在一段时间内没法评价全部歌曲,时间长短视情节严重改变。blog

  • 限制用户发布动态:当某用户发布的动态被其余用户举报(使用不文明词汇,发布不良信息或敏感信息,发布反动言论)且核实后,封禁相应用户在一段时间内没法发布动态,时间长短视情节严重改变。图片

  • 限制用户建立圈子:当某用户建立的圈子被其余用户举报(圈子内讨论不正常信息,组织非法活动,组织违反道德底线的活动)且核实后,封禁相应用户在一段时间内没法建立圈子,时间长短视情节严重改变。

  • 解散圈子:当某用户建立的圈子被其余用户举报(圈子内讨论不正常信息,组织非法活动,组织违反道德底线的活动)且核实后,管理员能够解散该圈子。

  • 删除帖子:当某用户发布的帖子被其余用户举报(帖子内发布不正常信息,组织非法活动,组织违反道德底线的活动)且核实后,管理员能够解散该帖子。

  • 删除用户动态:当某用户发布的动态被其余用户举报(使用不文明词汇,发布不良信息或敏感信息,发布反动言论)且核实后,管理员能够删除该动态。

2.3 普通用户实例设计

  • 修改我的信息: 用户能够在我的主页上修改我的信息(包括我的昵称,密码,头像,我的介绍)。

  • 搜索歌曲: 用户在首页搜索栏输入歌曲名称,网页显示歌曲中包含用户输入的搜索信息的歌曲。

  • 搜索相应歌手的歌曲: 用户在首页搜索栏输入歌手名称,网页返回该歌手下对应的歌曲。

  • 建立歌单: 用户能够本身建立歌单。

  • 把歌曲加入歌单: 用户能够把本身喜欢的歌曲加入到本身建立的某个歌单中。

  • 移除歌曲: 用户能够凭借本身喜爱把本身某个歌单中的某首歌曲移出歌单。

  • 删除歌单: 用户能够凭借本身喜爱删除本身建立的某个歌单。

  • 用户关注: 用户在曲库的评价页面上,经过浏览其余用户的评论寻找志同道合的人进行关注。

  • 取消用户关注: 用户能够在我关注的人页面或者被关注的人的主页进行取消关注用户功能。

  • 建立动态: 用户能够在我的主页上发布动态(可添加图片,动态只能被你本身和关注你的人看见)。

  • 浏览动态: 用户能够进入其余用户动态页面,浏览其余用户的动态(只有关注当前用户才能浏览该用户动态,不然只能查看他的我的介绍信息)。

  • 建立圈子: 用户能够建立一个小组形式的圈子群,而且邀请关注的人加入该圈子。

  • 发布帖子: 用户能够在本身加入的圈子中发布帖子,可供别的用户评论。

  • 邀请用户加入圈子: 能够邀请关注的人加入圈子(须要关注的人赞成是否加入该圈子)

  • 删除评论(帖子,歌曲,动态): 用户能够凭借本身喜爱删除发布的帖子评论,歌曲评论,动态评论。

  • 添加评论(帖子,歌曲,动态): 用户能够在本身的发布的帖子,动态;别人的帖子动态下面添加评论,亦或是在别人的评论下面追加评论,也能够在歌曲下面述说本身的我的感想。

  • 注册帐号:游客能够在页面上注册帐号变成用户从而进行具有一些用户的权限。

3、类图设计

3.1 歌手类

属性 含义
singer_id 歌手id
singer_name 歌手姓名
singer_img 歌手图片
play_times 播放次数
thumbs_up_num 点赞数
info 歌手介绍

方法:

  • Load_singer:用户或游客在进入网站时调用此方法加载歌手

  • Add_singer:管理员经过调用此方法向数据库中添加歌手。

  • Delete_singer:管理员经过调用此方法向数据库中删除歌手。

  • Search_singer:游客和用户经过调用此方法来搜索用户

  • Modify_singer:管理员经过调用此方法来修改用户各项信息。

3.2 歌曲类

属性 含义
song_id 歌曲id
song_name 歌曲名字
song_img 歌曲图片
play_times 播放次数
thumbs_up_num 点赞数

方法:

  • Search_song:游客和用户调用此方法来搜索歌曲。

  • Search_song_by_singer:游客和用户调用此方法经过歌手搜索此歌手下的歌曲。

  • Load_song:游客和用户进入网站时调用此方法来加载一些歌曲。

  • Add_song:管理员调用此方法来向数据库中添加歌曲。

  • Modify_song:管理员调用此方法来修改歌曲信息。

  • Delete_song:管理员调用此方法来下架歌曲。

3.3 歌单类

属性 含义
sheet_id 歌单id
sheet_name 歌单名字
owner 歌单拥有者
sheet_img 歌单图片
play_times 播放次数
info 介绍信息
thumbs_up_num 点赞数
follow_num 关注量

方法:

  • Add_sheet:用户调用此方法来添加本身的歌单。

  • Delete_sheet:用户调用此方法来删除本身的歌单。

  • Load_sheet:游客或用户在进入网站时调用此方法来加载一些歌单。

  • Modify_sheet:用户调用此方法来修改本身的歌单。

  • Search_sheet:游客或用户调用此方法来搜索歌单。

3.4 用户类

属性 含义
user_id 用户id
user_nickname 用户昵称
password 用户登陆密码
gender 用户性别
birthday 用户生日
motto 用户个性签名
info 介绍信息
thumbs_up_num 点赞数
user_type 用户类型(游客、普通、管理员)

方法:

  • Modify_user_info:用户调用此方法来修改本身的我的简介(管理员不须要,根本没人看获得他)

  • Register_user:游客调用此方法来注册一个新的用户。

  • Delete_user:管理员调用此方法来删除普通用户,不能删除管理员。

3.5 评论类

属性 含义
comment_id 评论id
user_id 该条评论的用户id
item_type 用于区别此评论在哪里出现(音乐、圈子、歌单…)
item_id 评论出现地(音乐、圈子、歌单…)的id
content 评论内容
create_time 评论时间
thumbs_up_num 点赞数

方法:

  • Load_comment:游客进入歌曲页面时调用此方法加载歌曲评论,用户在进入帖子,动态,歌曲页面时调用此方法加载相应项目的评论。

  • Add_comment:用户调用此方法添加对应项目下的评论。

  • Delete_comment:用户或管理员调用此方法删除相应的评论。

  • Modify_comment:用户调用此方法来修改评论。

  • Report_comment:用户调用此方法对相应评论进行举报。

3.6 点赞类

属性 含义
user_id 点赞用户的id
item_type 点赞的类型(音乐、圈子、歌单…)
item_id (音乐、圈子、歌单…)的id

方法:

  • Add_thumbsup:用户调用此方法对歌手、歌曲、歌单、用户、评论、帖子、圈子或是动态点赞。

  • Delete_thumbsup:用户调用此方法取消对歌手、歌曲、歌单、用户、评论、帖子、圈子或是动态的点赞。

  • Is_up:显示是否已点赞,不显示的调用。

3.7 关注类

属性 含义
user_id 用户id
to_user_id 被关注用户id

方法:

  • Add_follow:用户调用此方法添加对某个用户的关注。

  • Delete_follow:用户调用此方法删除对某个用户的关注。

  • Load_follow:用户在查看本身关注的人的页面调用此方法来加载本身所关注的人。

  • Is_follow:显示是否已关注,不显示的调用。

3.8 圈子类

属性 含义
group_id 圈子id
user_id 圈子建立用户id
group_name 圈子名称
create_time 建立时间
info 介绍信息
thumbs_up_num 点赞数
follow_num 关注数

方法:

  • Add_group:用户调用此方法来建立一个圈子。

  • Delete_group:用户或管理员调用此方法来解散一个圈子。

  • Load_group:用户在进入圈子页面时调用此方法来加载已加入圈子信息。

  • Invite_user:用户调用此方法来邀请其余用户加入相应圈子。

  • Manage_group:管理员调用此方法管理圈子

3.9 帖子类

属性 含义
post_id 帖子id
group_id 帖子所属圈子id
user_id 发帖用户id
title 帖子标题
content 帖子内容
create_time 建立时间
recent_time 最新评论发表时间
thumbs_up_num 点赞数

方法:

  • Add_post:用户调用此方法来添加帖子。

  • Load_post:用户在进入具体圈子后调用此方法来加载该圈子下的帖子信息。

  • Delete_post:用户或管理员调用此方法来删除帖子

  • Modify_post:用户调用此方法来修改帖子信息。

3.10 我的动态类

属性 含义
zone_id 空间动态id
user_id 动态全部者id
create_time 建立时间
content 内容
item_type 动态的类型(音乐、圈子、歌单…)
item_id (音乐、圈子、歌单…)的id
thumbs_up_num 点赞数

方法:

  • Add_zone:用户调用此方法来添加我的动态。

  • Delete_zone:用户或管理员调用此方法来删除动态。

  • Load_zone:用户在进入动态页面调用此方法来加载一些动态。

  • Modify_zone:用户调用此方法来修改我的动态。

4、顺序图设计

4.1 关注用户流程

用户登陆以后经过点击用户来到相应用户主页,而且点击关注,往数据库里添加关注数据信息以后成功返回。

4.2 添加帖子评论流程

用户首先找到本身加入的圈子,点击相应的圈子进行查看,查找到具体的帖子而后添加评论,往数据库里添加评论数据信息后成功返回。

4.3 封禁用户流程

管理员首先找到相应的圈子,查看里面某用户发布的帖子,判断帖子违规后,对用户进行限制发帖等措施。

4.4 删除评论流程

管理员首先查找到相应的用户,再找到该用户下面的违规评论,删除违规评论,删除成功并返回。

4.5 删除我的动态流程

管理员首先找到用户,再找到该用户下的违规我的动态,进行删除,删除成功并返回。

4.6 经过歌单查找歌曲流程

用户先搜索到想要的歌单,点开歌单后找到歌单中对应的歌曲。

4.7 经过歌手查找歌曲流程

用户先搜索到歌手,再找到该歌手下对应的歌曲。

4.8 加载帖子流程

用户先查找到圈子,再点击圈子加载该圈子下全部帖子。

4.9 加载动态流程

用户先找到关注的用户,再点开他的我的动态页面加载他的全部我的动态。

4.10 点赞动态流程

用户找到关注的用户,点开他的我的动态页面加载他的全部我的动态,而后对具体某一条我的动态进行点赞,往数据库中添加相应点赞信息以后成功返回。

相关文章
相关标签/搜索