界面原型程序demo:http://kealine.top/SE/demo/

一、引言

1.1 编写目的

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

1.2 开发背景

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

1.3 开发工具

前端 后端
开发语言 JavaScript Python
框架 Vue.js Flask

二、项目需求

2.1 角色定义

角色 定义
管理员 可对音乐库进行乐曲的上传和下架,对普通用户进行管理,对用户动态和圈子进行管理。
普通用户 可以搜索音乐并播放并且关注其他用户,可以发布动态和创建圈子。
游客 可以在曲库中搜索音乐并播放,但是无法浏览用户创建的圈子和发布的动态,自身也无法发布动态和创建圈子。

2.2 模块划分

“Violet”音乐社区的功能模块可基本分为两个方面:音乐模块以及社交模块。模块示意图如下图所示:

2.3 功能概述

2.3.1 管理员

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

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

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

  • 限制用户发布动态:当某用户发布的动态被其他用户举报(使用不文明词汇,发布不良信息或敏感信息,发布反动言论)且核实后,封禁相应用户在一段时间内无法发布动态,时间长短视情节严重改变。
  • 限制用户创建圈子:当某用户创建的圈子被其他用户举报(圈子内讨论不正常信息,组织非法活动,组织违反道德底线的活动)且核实后,封禁相应用户在一段时间内无法创建圈子,时间长短视情节严重改变。
  • 解散圈子:当某用户创建的圈子被其他用户举报(圈子内讨论不正常信息,组织非法活动,组织违反道德底线的活动)且核实后,管理员可以解散该圈子。
  • 删除帖子:当某用户发布的帖子被其他用户举报(帖子内发布不正常信息,组织非法活动,组织违反道德底线的活动)且核实后,管理员可以解散该帖子。
  • 删除用户动态:当某用户发布的动态被其他用户举报(使用不文明词汇,发布不良信息或敏感信息,发布反动言论)且核实后,管理员可以删除该动态。

2.3.2 普通用户

  • 修改个人信息:用户可以在个人主页上修改个人信息(包括个人昵称,密码,头像,个人介绍)。
  • 搜索歌曲:用户在首页搜索栏输入歌曲名称,网页显示歌曲中包含用户输入的搜索信息的歌曲。
  • 搜索相应歌手的歌曲:用户在首页搜索栏输入歌手名称,网页返回该歌手下对应的歌曲。
  • 浏览评价:用户在点击具体某一首歌之后可以在网页下方浏览该歌曲的相应的评论。
  • 评价歌曲:用户在点击具体某一首歌之后可以在网页下方对该歌曲进行相应的评论。
  • 用户关注:用户在曲库的评价页面上,通过浏览其他用户的评论寻找志同道合的人进行关注。
  • 取消关注: 用户可以在我关注的人页面或者被关注的人的主页进行取消关注用户功能。
  • 创建动态:用户可以在个人主页上发布动态(可添加图片,动态只能被你自己和关注你的人看见)。
  • 浏览动态: 用户可以进入其他用户动态页面,浏览其他用户的动态(只有关注当前用户才能浏览该用户动态,否则只能查看他的个人介绍信息)。
  • 评论动态: 用户可以对自己的动态或者关注的人的动态进行评价
  • 创建圈子: 用户可以创建一个小组形式的圈子群,并且邀请关注的人加入该圈子。
  • 发布帖子: 用户可以在自己加入的圈子中发布帖子,可供别的用户评论。
  • 评论帖子: 用户可以在自己发布的帖子或者是其他用户发布的帖子下方进行评论,也可对其他用户的评论进行回复。
  • 邀请用户加入圈子: 可以邀请关注的人加入圈子

2.3.3 游客

  • 搜索歌曲: 游客在首页搜索栏输入歌曲名称,网页显示歌曲中包含游客输入的搜索信息的歌曲。
  • 搜索相应歌手的歌曲: 游客在首页搜索栏输入歌手名称,网页返回该歌手下对应的歌曲。
  • 浏览评价: 游客在点击具体某一首歌之后可以在网页下方浏览该歌曲的相应的评论。
  • 注册账号:游客可以在页面上注册账号变成用户从而进行具备一些用户的权限。

2.4 数据流图

三、前端页面

“Violet”平台选用PC网页端,要求整体界面简洁、风格统一,且与用户有良好的交互性。该平台主要有以下界面:

  • 登陆界面

用于用户验证。要求:界面简洁明了。

  • 主页面

用于展示热门歌曲、歌单、专辑,并提供索引栏和播放栏。要求:界面简洁、主题色调醒目。

  • 曲库搜索页面

用于用户搜索歌曲、歌单、专辑,同时提供热门搜索链接。要求:界面简洁明了。

  • 动态页面

用于展示用户所关注的人发的动态

  • 圈子页面

用于展示该平台上存在的圈子,可通过分类索引栏找到不同类别的圈子(如华语、摇滚、情歌等)。要求:界面简洁明了、布局合理、用户易上手。

  • 个人主页

用于展示用户个人所发的动态、关注的人、加入的圈子。要求:界面简洁明了,布局合理。

(*注:若在开发过程中遇到特殊需求,可合理添加其他页面)

四、软件要求

4.1 性能要求

本平台主要针对普通用户,对时间要求度不高,但仍要保证系统稳定快速地运行,同时面对不同浏览器不会产生兼容性问题,具体要求如下:

  • 数据精确性

要求在用户操作过程中传输的数据准确无误。

  • 时间特性

要求系统即使在多用户同时访问、负载较高的情况下,也能对用户的操作做出快速响应,对数据的变化做出快速更新。

  • 适应性

要求在不同性能的终端,不同的网络环境,不同的浏览器上都能正常运行,不会产生兼容性问题。

4.2 属性要求

本平台在使用过程中,不会对用户系统造成伤害,不会非法窃取用户个人信息,更不会在未经允许的情况下访问除平台数据库外任何用户的文件。

  • 安全性

该平台具有用户登录验证功能,对尝试登陆失败次数超过上限的账号,进行暂时拒绝登陆,同时通过绑定的邮箱或手机提醒用户本人该操作。

  • 完整性

在遇到突发事故,如硬件损坏、停电等,平台数据不会丢失。

  • 可维护性

平台的不同模块之间应具有良好的隔离性,产生bug时可以精确定位问题模块,且不会影响其他模块的正常运行。

  • 易使用性

平台界面的功能和索引等元素应具有良好的交互性,便于用户接受,同时提供必要的帮助文档。

五、人员分工

姓名 学号 具体分工
周佳辉 (组长) 31701030 界面原型,前端开发
罗贤哲 31701013 界面原型,前端开发
孙华阳 31701015 数据库设计,后端开发
陈天翼 31701007 数据流图绘制,后端开发
董腾然 31701009 需求文档撰写,后端开发
周家豪 31701059 需求文档撰写,后端开发

Violet音乐社区需求分析说明书的更多相关文章

  1. Violet音乐社区 - 个人总结报告

    一.项目概述 1.1 项目背景 音乐是一门艺术,是由有组织的乐音来表达人们情感.反映人类现实生活情感的艺术.现代科技的发展使得人们可以利用网络随时随地的享受音乐,然而在当今互联网却很少有一个以音乐为媒 ...

  2. Violet音乐社区界面原型手册

    目录 Violet音乐社区界面原型手册 一.引言 1.0 项目前阶段相关文档 1.1 编写目的 1.2 开发背景 二.界面原型展示 2.0 界面设计说明 2.1 首页 2.2 歌单/专辑/单曲界面 2 ...

  3. Violet音乐社区 - 总结报告

    目录 一.项目概述 1.1 项目背景 1.2 编写目的 1.3 项目文档 1.4 项目源码 1.5 项目成果 二.个人工作总结 1.1 工作概览 1.1.1 作为项目组组长 1.1.2 作为项目组成员 ...

  4. Violet音乐社区设计文档

    目录 Violet音乐社区设计文档 一.引言 1.1 编写目的 1.2 开发背景 二.用例图设计 2.1游客实例设计 2.2 管理员实例设计 2.3 普通用户实例设计 三.类图设计 3.1 歌手类 3 ...

  5. SE Springer小组之《Spring音乐播放器》需求分析说明书一

    软件需求说明书 软件需求说明书的编制是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解, 使之成为整个开发工作的基础. 1 引言 1.1编写目的 使用户对该软件的初始规定有一个理解,也使软 ...

  6. SE Springer小组之《Spring音乐播放器》需求分析说明书二

    2.1 目标 Spring音乐播放器软件为课程<软件工程>所开发的课程作业,主要意图是为访问计算机中的mp3格式的音频文件,并使其能够完成访问,读取,添加,保存,播放,切换音频文件等功能. ...

  7. 食品药检所LIMS需求分析说明书

    1.XX市食品药检所LIMS系统需求分析... 5 1.1检验业务流程... 5 1.1.1样品受理... 5 1.1.1.1选择受理任务... 5 1.1.1.2录入检品信息... 5 1.1.1. ...

  8. 网易云音乐APP分析

    网易云音乐-感受音乐的力量 你选择的产品是?  网易云音乐 为什么选择该产品作为分析? 之前用的一直是QQ音乐,但是有一天一个朋友分享了一首网易云上的音乐(顺便分享一下歌名:Drop By Drop) ...

  9. spring播放器详细设计说明书(一)

    1 引言 1.1编写目的 编写目的是详细说明SPRING音乐播放器的设计使用,预期读者对象为在个人电脑上需要使用简单音乐播放器的用户.1.2项目背景  说明: a.待开发软件系统的名称为SPRING音 ...

随机推荐

  1. 单片机内核Cortex-M3八大知识点

    单片机内核Cortex-M3的八个知识点 1.指令集 32位ARM指令集:对应ARM状态 16位Thumb指令集:对应Thumb状态(是ARM指令集的一个子集)​   指令集演进图 2.BKP备份寄存 ...

  2. 基于JS的ajax的实现,JSON和JSONP,基于JQuery的ajax的实现

    基于JS的ajax的实现,JSON和JSONP,基于JQuery的ajax的实现1.基于JS的ajax的实现 step1: var xmlhttp = XMLHttprequest() #实例化一个对 ...

  3. 一个故事搞懂Java并发编程

    最近在给别人讲解Java并发编程面试考点时,为了解释锁对象这个概念,想了一个形象的故事.后来慢慢发现这个故事似乎能讲解Java并发编程中好多核心概念,于是完善起来形成了了这篇文章.大家先忘记并发编程, ...

  4. Life is not supposed to be easy 。

    对每个人而言,真正的职责只有一个: 找到自我.然后在心中坚守一生,全心全意,永不停息. 所有其他的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧. 对婚姻,对房子的 ...

  5. C#通过反射调用类及方法

    反射有个典型的应用,就是菜单的动态加载,原理就是通过反射调用某个窗体(类).下面演示一下通过反射调用类及方法: 1.新建一个类,命名为:ReflectionHelper,代码如下: #region 创 ...

  6. leaflet-webpack 入门开发系列四图层控件样式优化篇(附源码下载)

    前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 w ...

  7. C++ --const修饰指针

    const修饰指针 1.const修饰指针 (常量指针)常量的指针 const int *p = &a; const修饰的是*p(表示内容为常量),不是p(指针) 指针指向的地址可以改,但指针 ...

  8. Opencv中图像height width X 轴 Y轴 rows cols之间的对应关系

    这里做一个备忘录:

  9. 构造函数new运算符进行了哪些操作

    new 运算符 1,实例化一个对象 2,将构造函数prototype对象赋值给对象__proto__属性 3,将对象作为函数this传进去,函数有return 并且是对象的话,就直接返回return的 ...

  10. [译]Vulkan教程(32)生成mipmap

    [译]Vulkan教程(32)生成mipmap Generating Mipmaps 生成mipmap Introduction 入门 Our program can now load and ren ...