table of Contents
Violet music community design document
Requirements Analysis Document: https://www.cnblogs.com/Keadin/p/11791088.html
I. Introduction
1.1 write Objective
This document is "Violet" music community development team guidance document. This document helps developers to read between the team, while improving software quality. Developers should read this document, to be developed according to the documentation requirements, achieve the desired function and effect.
1.2 Development Background
Music is an art, is organized by the tone people to express emotion, art reflects real life human emotions. Development of modern technology makes it possible to enjoy music anytime, anywhere using the Internet, but very few in today's Internet to a social platform as a medium of music. This team wanted to form "music + social", the development of a set of songs, dating and discussion as one of the online community - "Violet" music community. Violet multi-finger violet, can be described as shy people, this team aims to enhance this platform for people to exchange music, while narrowing the distance between people.
Second, with the design of FIG Example
2.1 Design examples tourists
Search Songs: Visitors enter the song name in the search bar home page, the page display song song contains the search information input tourists.
Search for the singer's song: Visitors enter artist name search bar on the home page, the page corresponding to the singer returned the next song.
Browse rating: visitors can navigate through the comments of the song in the bottom of the page after clicking on a specific song.
2.2 Design examples administrator
Adding songs to the music library: adding songs (including: the song title, artist, song or artist pictures picture) to the music library.
Shelves song: should some copyright claims or parties in the lyrics contain some bad information or sensitive information from the music library shelves songs.
Restrict user evaluation Song: When a users post reviews by other users to report (to use uncivilized vocabulary, release harmful or sensitive information, publishing reactionary remarks) and verified, ban the user can not evaluate all the songs over a period of time, the length of time depending on the circumstances serious change.
Restrict users to publish dynamic: when a user publish dynamic reports by other users (using uncivilized vocabulary, release harmful or sensitive information, publishing reactionary remarks) and verified, the user can not publish banned dynamic period of time, depending on the length of time the circumstances are serious change.
Restrict the user to create a circle: after when the circle of a user-created being reported to other users (the discussion is not normal information within the circle, organizing illegal activities, organized activities contrary to the moral bottom line) and verification, banning the user can not create a circle over a period of time, time depending on the length of the case is serious change.
The dissolution of the circle: the circle when a user is created to report other users (not discussed within the normal circle of information, organizing illegal activities, organized activities contrary to the moral bottom line) and verify the administrator can dissolve the circle.
Delete Post: When a user posts the reported release of other users (issued within the post abnormal information, organizing illegal activities, organized activities contrary to the moral bottom line) and verify the administrator can dissolve the post.
Delete User activity: When a user publish dynamic reports by other users (using uncivilized vocabulary, release harmful or sensitive information, publishing reactionary remarks) and verify the administrator can delete the dynamic.
2.3 Design of ordinary users Examples
Modify Personal Information: Users can modify your personal information (including personal nickname, password, avatar, personal introduction) on a personal home page.
Search Songs: Songs user to enter the name of the search bar on the home page, the page display song song contains the search information input by the user.
Search for the singer of the song: the user enters the name of the singer search bar on the home page, the page corresponding to the singer returned the next song.
Create a single song: Users can create their own songs alone.
The songs added to the song list: Users can join their favorite songs to a single song that you create.
Remove Song: Users can rely on their own preferences to own a single song in a song out of a single song.
To delete a single song: Users can rely on their own preferences to delete a single song that you have created.
Users concerned about: the user on the evaluation page music library, were concerned by browsing other users' comments looking for like-minded people.
Cancel the user concern: the user can unfollow a user function in people I'm following page or the concerned person's home page.
Create dynamic: users can post updates on your personal home page (you can add images, dynamic can only be yourself and the people following you see).
Dynamic View: The user can access other users dynamic pages, browse other users' dynamic (only concerned about the current user can browse the user dynamically, or can only see his personal introduction information).
Create a circle: the user can create a group in the form of a circle group, and invite people to join the circle of concern.
Published Post: Users can post their own to join circles for other users comments.
Invite users to join the circle: You can invite people to join the circle of concern (concern whether people agreed to join the circle)
Delete comment (posts, songs, dynamic): Users can rely on their own preferences to delete comments posted post, song comments, dynamic comments.
Add a comment (post, songs, dynamic): Users can publish posts in their own dynamic; other people's posts dynamically add the following comment about, or additional comments on other people's comments below, you can also tell their own personal feelings in the song below .
Registered account: visitors can register to become a user account on a page to perform with some of the user's permissions.
Third, the design class diagram
3.1 class singer
Attributes | meaning |
---|---|
singer_id | Singer id |
singer_name | Artist Name |
singer_img | Singer Pictures |
play_times | Views |
thumbs_up_num | Points of praise |
info | Introduction to the singer |
method:
Load_singer: users or tourists call this method to load the singer when entering the site
Add_singer: Administrator singer added to the database by calling this method.
Delete_singer: database administrator to delete the singer by calling this method.
Search_singer: visitors and users to search for users by calling this method
Modify_singer: the administrator to modify the user information by calling this method.
3.2 Class songs
Attributes | meaning |
---|---|
song_id | Songs id |
song_name | Song name |
song_img | Pictures song |
play_times | Views |
thumbs_up_num | Points of praise |
method:
Search_song: Tourists and user invokes this method to search for songs.
Search_song_by_singer: This method is called tourists and users search for songs by singers in this singer.
Load_song: Tourists and user invokes this method when entering the site to load some songs.
Add_song: Administrator call this method to add songs to the database.
Modify_song: Administrators Called to modify song information.
Delete_song: Administrators Called to the shelf songs.
3.3 Single Song category
Attributes | meaning |
---|---|
sheet_id | Single song id |
sheet_name | Single song name |
owner | Song single owner |
sheet_img | Song Single Image |
play_times | Views |
info | Introduction Information |
thumbs_up_num | Points of praise |
follow_num | The amount of attention |
method:
Add_sheet: user invokes this method to add your own song list.
Delete_sheet: user invokes this method to delete your song list.
Load_sheet: tourists or this method is called when the user enters the site to load some songs alone.
Modify_sheet: user invokes this method to modify their own songs alone.
Search_sheet: tourists or user invokes this method to search for a single song.
3.4 user class
Attributes | meaning |
---|---|
user_id | User id |
user_nickname | User's Nickname |
password | User login |
gender | Gender |
birthday | User birthday |
motto | User Signature |
info | Introduction Information |
thumbs_up_num | Points of praise |
user_type | User type (tourists, general administrator) |
method:
Modify_user_ info: user invokes this method to modify their own personal profile (administrators do not need, simply no one to give him )
Register_user: Tourists call this method to register a new user.
Delete_user: Administrators Called to delete the general user, the administrator can not be deleted.
Comments Class 3.5
Attributes | meaning |
---|---|
comment_id | Comments id |
user_id | Comment article user id |
item_type | This comment appears to distinguish where the (music, circle, single song ...) |
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.1 关注用户流程
用户登录之后通过点击用户来到相应用户主页,并且点击关注,往数据库里添加关注数据信息之后成功返回。
4.2 添加帖子评论流程
用户首先找到自己加入的圈子,点击相应的圈子进行查看,查找到具体的帖子然后添加评论,往数据库里添加评论数据信息后成功返回。
4.3 封禁用户流程
管理员首先找到相应的圈子,查看里面某用户发布的帖子,判断帖子违规后,对用户进行限制发帖等措施。
4.4 删除评论流程
管理员首先查找到相应的用户,再找到该用户下面的违规评论,删除违规评论,删除成功并返回。
4.5 删除个人动态流程
管理员首先找到用户,再找到该用户下的违规个人动态,进行删除,删除成功并返回。
4.6 通过歌单查找歌曲流程
用户先搜索到想要的歌单,点开歌单后找到歌单中对应的歌曲。
4.7 通过歌手查找歌曲流程
用户先搜索到歌手,再找到该歌手下对应的歌曲。
4.8 加载帖子流程
用户先查找到圈子,再点击圈子加载该圈子下所有帖子。
4.9 加载动态流程
用户先找到关注的用户,再点开他的个人动态页面加载他的所有个人动态。
4.10 点赞动态流程
用户找到关注的用户,点开他的个人动态页面加载他的所有个人动态,然后对具体某一条个人动态进行点赞,往数据库中添加相应点赞信息之后成功返回。