星辰大海组--需求规格说明书
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/computer-science-class2-2018 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/computer-science-class2-2018/homework/12017 |
这个作业的目标 | <完成需求规格说明书> |
小组的组号和队名 | 星辰大海组 |
小组的队长姓名 | 谢思敏 |
需求规格说明书
修订历史记录
日期 | 版本 | 说明 | 作者 |
---|---|---|---|
2021.5.20 | V1.0 | 比较粗糙的第一版 | 谢思敏、李佳欣 |
2021.5.22 | V2.0 | 更改部分需求,细化验收验证标准 | 谢思敏、李佳欣 |
引言
目的
该文档为了将项目的整体结构和功能结构描述出来。对功能需求、性能需求做出了较好的分析,便于用户更好的和开发人员沟通。同时也是对项目的实现的一种总结。尽可能的展现项目的优缺并发现一些问题。
本文档面向多种读者对象:
(1)用户:了解预期产品的功能和性能,能进行对功能的运用。在阅读本文档时,首先要了解产品的功能概貌,然后可以根据自身的需要对每一功能进行适当的了解。并了解对预期一些功能的扩展。
(2)测试员:根据本文档编写测试用例,并对软件产品进行功能性测试和非功能性测试。
(3)程序员:了解系统功能,编写《用户手册》。
背景
本次待开发的软件为简洁音乐播放器。
用户通过使用该软件在微信小程序听歌等操作。能完成对网易云接口的对接,并且给出一个让用户感到舒适的听歌界面。
参考文献
[1]网易云音乐 NodeJS 版 API
项目概述
产品描述
通过开发基于微信平台的微信小程序解决听歌无需安装软件,不需要百度找满是广告的网址的问题。给用户简洁化的听歌体验。
产品功能
当前市场上听歌大部分都是APP,需要下载安装才能使用,对有些少时间听歌不想下载的受众很不友好,而很多听歌的网站,首先没有什么美感可言,其次广告很多。而这款微信小程序的听歌播放器就很好的解决了这些问题。用户能通过直接搜索微信小程序进行听歌。
1.用户
用户场景如下:
用户A在有天突然想想听一首歌曲,但不想下载APP,于是打开微信小程序搜索想要听的歌曲,同时可以看到歌曲排行榜,随开随用,无需下载,也不需耗费很多流量。
听课小程序的运行方式:依托于网易云提供的13个接口,能完美与网易云音乐库对接,用自己设计的柔和界面给用户一种舒心的视觉感受。用户首先通过微信小程序简洁的一键注册登录方式登陆小程序,无需验证码一类的验证方式,方便快捷,可以进行歌曲的搜索播放和收藏。
程序员员可以对一些网易云没有的音乐进行增删,进一步吸引用户对小程序的使用。设置网评或者公众号的音乐评价榜单,给用户推荐更多的好听歌曲。(根据大数据对用户的喜好进行推送还无法做到)
3 用户特点
本小程序的最终用户为想听歌但不想下载音乐APP的人群,该用户群体普遍喜欢简洁风格,不喜繁琐,不喜看到广告。能很快适应小程序的操作。
操作人员及维护人员为在校学子,了解该工作的整体流程,深入用户交流,便于调整小程序功能和界面,实现用户需求。
4 一般约束
进行本小程序开发工作的约束条件如下:
1.开发周期短:一个月的开发周期需要开发人员合理地计划时间,做到多任务并行处理。
2.方法和技术的使用受到限制:项目团队成员的技术水平还不够成熟,需要同时学习多种技术和开发中的能力。
3.开发人员少:两个人的开发需要每个人承担更多的任务,需要每个人不带抱怨和拖延的工作,并需要多加商讨对一些碰到的问题给出最佳的解决或替代方案。
2.5 假设与依据
本项目是否能够成功实施,主要取决于以下的条件:
(1)团队成员积极合作,为项目的发展与实施、个人时间的合理规划同时为团队做出合理的牺牲,配合另一个队友完成任务。
(2)团队掌握能应用于项目的相关技术,这是系统性能优化与否以及项目成功与否的保证。
3. 具体需求
首先引入类图明确该项目中的角色分类及其角色间的相互联系。
3、具体需求
3.1 功能需求
3.1.1 登陆页
该系统共有一种角色:用户。具有登陆功能,登陆后方可进入个人中心页,视频页。
1.登录界面
用户通过输入账号密码,点击登录,登录账号进入个人中心页。
3.1.2 个人中心页
用户登陆之后跳转到个人中心页,用户通过个人中心页可以查看自己最近播放的歌曲,然后选择历史歌曲进行播放。
3.1.3 视频页
用户登陆之后可以观看视频页的视频数据,通过顶部导航标签可以观看不同类型的视频内容。然后选择相应的视频进行播放,或者查看更多的视频。
3.1.4 首页
用户在首页上可以观看排行榜数据,以及每日推荐歌单,方便在没有想听的歌曲时有好的选择。并且可以了解当今的流行歌曲是哪些。
3.1.5 歌曲详情页
用户点击歌曲,跳转至歌曲详情页,查看相应的歌曲信息,了解是否是想要的那首歌曲(比如有没有歌词,是不是纯音乐)
3.1.6 搜索页
用户通过搜索框跳转到搜索页,进行搜索想要的歌曲
3.2 外部接口需求
3.2.1 用户接口
本系统基于bs架构,所有界面使用的微信小程序风格,用户界面的具体细在功能需求文档中描述。
3.2.2 硬件接口
无特殊需求。
3.2.3 软件接口
该项目所有接口使用的都是由网易云音乐提供的开放接口, 最终请求的地址是硅谷云服务器使用 NodeJs 搭建的服务器接口,流程为先请求搭建好的NodeJs 服务器,由 NodeJs 转发请求给网易云音乐的服务器,此举的目的是为了接口规范, 统一化。
3.2.4 通信接口
无特殊需求。
3.3 性能需求
3.3.1精度需求
1.个人信息精度(用户):
用户密码:密码由6-12个字符组成。密码只能由数字、英文字符、下划线组成。不可为空。
用户手机号码:只允许11位的数字组成。不可为空。
2.音乐信息精度:
搜索栏:只允许输入中英文,长度不超过20个字,可为空。
歌单:不能出现乱码,要显示正确的歌曲信息。
3.4 属性
3.4.1 可用性
(1)便于操作,合理的操作流程。尽可能从用户的角度出发,以便于使用本小程序。如:没有多余的繁琐功能,简洁的操作流程,必要的一些功能操作。
(2)必需的输入控件。该系统可以控制需要输入的项目,使用户能够确保信息输入的完整性。对于必须输入的项目,同时提供统一的有效提示。
(3)容忍误差。在非硬件故障或非通信故障情况下,系统能保证系统正常运行,并能提供足够的提示信息,帮助用户有效、正确地完成任务。
3.4.2 安全性
(1)网络传输安全:
支持发起通用请求、文件上传下载、WebSocket通讯机制。
通用request网络请求仅支持采用https,处理请求的接口位于com.tencent.mm.plugin.appbrand.g.c中,包含url校验、域名校验、发起请求和处理响应结果。
(2)数据存储安全:
以(key,value)形式存放在本地缓存,将小程序需要存储的key/value数据直接存储到Storage DB缓存,小程序进行数据保护需要自行做加密处理。数据存储在本地DB,微信APP会对DB数据整体做本地加密保护,所以小程序本地存储数据的安全性依赖于微信数据库加密方案的安全,策略与EnMicroMsg.db类似。
(3)小程序账户使用安全:
通过公众平台appid+appsecret+code,换取session_key/openid,并生成小程序第三方session,在小程序的服务器维护第三方session和微信session_key/openid的关联;客户端使用第三方session进行请求;
3.4.3 可维护性
后续可通过对小程序源码和对网易接口的更深入了解进行相应的维护。
4. 验收验证标准
分工:
工作流程:按照范例完成规格说明书的编写
负责人:谢思敏
具体分工:
李佳欣:完成原型图和相应的功能描述。并一起修改不足
谢思敏:完成除以上的其余部分。并一起修改不足