Beta-功能规格说明书
| 项目 | 内容 |
|---|---|
| 这个作业属于哪个课程 | 2021春季软件工程(罗杰 任健) |
| 这个作业的要求在哪里 | 团队项目-计划-功能规格说明书 |
一、引言
1. 项目简介
项目团队:删库跑路对不队
项目名称:题士
项目内容:针对学生考试刷题、学习交流等需求开发的一款集刷题、题目讨论、错题整理、社区资料分享等功能为一体的刷题软件
发布平台:Android客户端与微信小程序
2. 功能规格说明书的设计目标
- 定义软件总体要求,作为产品使用者和软件开发人员之间相互了解的基础
- 提供典型用户和典型场景介绍,定位产品需求,进行针对性功能开发
- 提供产品界面原型设计及交互步骤,帮助产品使用者快速了解产品内容
- 提供性能要求、初步设计和验收标准,作为软件开发人员进行软件架构设计,编码和测试的依据与基础
- 对产品用户量,日活跃量等相关数据设定期望,对相关用户做题数据进行收集和分类,作为产品运营阶段的总依据
3. 相关概念说明
| 概念 | 说明 |
|---|---|
| 高频错题 | 对任一题目,收集所有做题用户对于该题的做题情况,计算该题错误情况,将错误率较高的题目归类为高频错题 |
| 知识卡片 | 以卡片的形式,进行知识点的整理,归档,既有平台提供相关知识卡片,也支持用户自定义知识卡片内容 |
| 问答社区 | 平台提供公开社区,供用户之间进行问答交流,助教老师答疑解惑 |
| 资源社区 | 平台提供资源上传下载社区,供用户上传分享,下载资料 |
| 真实用户 | 所有使用该产品,并在统计时间截止内还未流失的用户 |
| 用户流失 | 将超过一个学期未登录的用户(即从当前学期的上一学期初到统计时都未登录的用户)视为流失用户 |
| 用户日活跃量 | 一天内使用产品的用户数量 |
二、典型用户和典型场景
我们针对产品的典型用户进行了以下五类划分:普通学生,大佬,DDL选手,助教和老师
普普通通,平平无奇的学生
| 内容 | 说明 |
|---|---|
| 用户姓名 | 钉崎野蔷薇 |
| 照片 | ![]() |
| 用户身份 | 19岁,女大学生,普普通通的大学生,各项能力处于平均水平 |
| 用户痛点1 | 有一定学习基础,想要通过做题对学习内容进行复习,获得中等偏上的成绩 |
| 用户痛点2 | 对基础题目能够正确作答,对于难题存在作答障碍或者理解困难等问题 |
| 用户痛点3 | 对于恶心的题目,有强烈的吐槽欲望 |
| 典型场景 | 日常学习时,通过题士多模式刷题及时回顾学习内容,巩固知识点;遇到难题时,在问答社区提问,等待大佬或者老师助教的解答;在做题的同时,在题目讨论区进行吐槽 |
| 支付意愿 | 愿意为题目和做题相关的功能进行付费,意愿较高 |
| 用户比例 | 50% |
学习无难事,万人膜拜的大佬
| 内容 | 说明 |
|---|---|
| 用户姓名 | 伏黑惠 |
| 照片 | ![]() |
| 用户身份 | 20岁,男大学生,学习能力强,愿意为同学答疑解惑,分享做题经验 |
| 用户痛点1 | 想要更有效率地进行做题和复习,对题目进行整理和分类,方便记录做题笔记,获得高分 |
| 用户痛点2 | 没有便捷途径获得往年的考题资料,及时复习 |
| 用户痛点3 | 想要有个途径对自己的踩坑进行记录和分享 |
| 典型场景 | 日常做题,借助题士整理错题,同时收藏好题和易错题;在做题的同时,记录解题思路和对应知识点;在资源分享社区及时获取往年真题,及时刷题 |
| 支付意愿 | 愿意为便捷做题的相关功能和题目资源付费,付费意愿较低 |
| 用户比例 | 20% |
平时玩乐,期末完了的DDL选手
| 内容 | 说明 |
|---|---|
| 用户姓名 | 虎杖悠仁 |
| 照片 | ![]() |
| 用户身份 | 20岁,男大学生,摸鱼一时爽,期末火葬场,不到期末绝不复习的DDL选手 |
| 用户痛点1 | 期末考前,想要在最短时间内过最多的题,同时重点关注好题和易错题 |
| 用户痛点2 | 知识点难以在短时间记忆,希望有人分享知识点记忆技巧 |
| 典型场景 | 三天之后航概期末考试,在短时间内,通过大量快速过题进行复习;吸取踩坑经验,做题小技巧,尽全力不挂科 |
| 支付意愿 | 为了考试能过,支付意愿高 |
| 用户比例 | 25% |
腼腆但是热情的课程助教
| 内容 | 说明 |
|---|---|
| 用户姓名 | 两面宿傩 |
| 照片 | ![]() |
| 用户身份 | 24岁,男研究生,课程助教,有耐心愿意为同学答疑解惑 |
| 用户痛点1 | 同学们常常提问同质问题,每次都需要重新回答同样的内容 |
| 用户痛点2 | 班级群中发布的资料常常过期,需要重新发送 |
| 典型场景 | 助教通过翻阅提问区问题,对共性题目统一解答;通过平台上传资料,不用担心资源过期,不能下载的问题 |
| 支付意愿 | 支付意愿极低 |
| 用户比例 | 4% |
有责任心的老教师
| 内容 | 说明 |
|---|---|
| 用户姓名 | 五条悟 |
| 照片 | ![]() |
| 用户身份 | 45岁,教授,课程主讲教师 |
| 用户痛点 | 希望了解同学们在学习本门课程的过程中遇到的难点、易错点等,从而针对性地讲解题目,整理知识点,帮助同学们通过课程 |
| 典型场景 | 打开题士,查询易错题和讨论区常见问题,制定习题课和复习课计划,帮助同学们针对性复习 |
| 支付意愿 | 支付意愿无 |
| 用户比例 | 1% |
三、界面原型设计与交互
1.整体跳转逻辑

2.原型设计
| 界面 | 功能描述 | 原型设计 |
|---|---|---|
| 引导页 | 简明扼要地为用户介绍本产品,传递本产品的核心理念 | ![]() |
| 登录 | 用户可以通过微信和手机号码两种方式进行登录 | ![]() |
| 注册 | 用户通过输入手机号,获取验证码进行注册,绑定账户 | ![]() |
| 首页 | 首页展示产品的核心功能,并提供相应功能入口,包括考期日历、错题/收藏、知识卡片、题库、资源社区、问答社区和刷题功能等,用户可以切换不同科目,选定科目后开始使用本产品 | ![]() |
| 我的-题库 | 展示用户头像、昵称、累计做题数、做题天数、历史记录等内容,提供关于我们、意见反馈、分享、设置和退出等功能入口 | ![]() |
| 我的-社区 | 由默认的题库选项切换至社区选项,获取问答数量、获赞数量等统计数据信息,提供我的问答的链接入口,方便用户直接查看 | ![]() |
| 刷题|背题 | 支持用户在刷题和背题两种模式中切换,对题目进行收藏等。在刷题模式下,用户根据题干内容选择正确选项,产品反馈正误,用户可以点击查看评论按钮,查看各种评论,也可以自己发表评论或评论他人评论;在背题模式下,产品直接提供题干内容和正确答案,用户可以快速背题 | ![]() |
| 题库 | 支持用户在题库中根据关键词进行搜索,同时展现当前科目下各章节的所有题目的完成情况,用户可以点击某一题开始刷题 | ![]() |
| 考期日历 | 支持用户根据考期安排设置考期日历,产品将根据考期日历对用户进行贴心提醒 | ![]() |
| 知识卡片 | 对于不便于设置为选择题形式的知识内容,均可以通过知识卡片的形式进行理解、记忆。知识卡片对知识进一步细化、整理和归纳,提升用户学习效率。开发团队将导入部分知识卡片,用户也可以自行添加设置卡片 | ![]() |
| 错题|收藏 | 展示用户的错题数或收藏题目数,并按照不同章节整理错题或收藏的题目,用户可以点击某一章节进入题目列表,查看该章节下的所有错题或收藏的题目 | ![]() |
| 题目列表 | 某一章节下的错题列表或收藏题目列表,用户可以点击开始按钮对错题或收藏的题目进行练习 | ![]() |
| 问答社区 | 支持用户查看Open、Closed、All和Mine四种状态下的讨论贴,用户可以发帖,回帖,参与讨论,产品将综合关注度、发帖时间等因素对不同状态的讨论贴分别排序后呈现 | ![]() |
| 资源社区 | 支持用户添加资源描述上传资源链接、根据链接下载资源等 | ![]() |
四、系统功能及验收标准
1.系统架构总览

2.系统功能详细描述
| 功能 | 描述 | 验收验证标准 | 开发阶段 | 实现成果展示 |
|---|---|---|---|---|
| 用户注册 | 用户使用有效信息进行注册 | 1. 对用户名,注册邮箱等进行检查,检查内容包括用户名规范、邮箱规范和密码规范等,及时反馈检查信息; 2. 发送验证码至用户邮箱进行验证,并完成绑定注册; 3. 注册完成后跳转至登录界面; |
Alpha | ![]() |
| 用户登录 | 用户使用账户(用户名或手机号码)和密码进行登录 | 1. 对登录用户名或用户手机号码进行有效性检验; 2. 对用户账户与密码进行匹配性检验; 3. 登录成功后,跳转至软件主页面; |
Alpha | ![]() |
| 个人信息 | 个人基本信息管理 | 1. 展示个人信息,包括用户昵称,用户头像等; 2. 对个人信息进行修改,包括更新用户昵称,更新用户头像等; |
Alpha | ![]() |
| 做题模式 | 提供多种模式进行题目练习 | 1. 提供顺序模式,随机模式等多种模式选项,进行题目练习; 2. 对不同科目进行切换; |
Alpha | ![]() |
| 关键词搜索 | 通过关键词进行查询 | 1. 提供关键词查询入口; 2. 支持对题目题干,题目选项等内容进行关键词搜索; 3. 对题目题干,题目选项的搜索结果进行分类展示; |
Alpha | ![]() |
| 题目收藏 | 题目收藏与收藏查看功能 | 1. 提供题目收藏按键,对题目进行收藏,按照用户自定义归档; 2. 提供收藏内容查看入口,按照用户自定义进行收藏整理; 3. 对已经收藏题目,提供取消收藏功能; |
Alpha | ![]() |
| 错题收集 | 错题收集与错题查看 | 1. 系统对用户做题信息进行收集,对错题进行收集和统计; 2. 提供错题查看入口,用户能够对错题进行自定义归档整理; 3. 用户能够将错题从错题列表中删除; |
Alpha | ![]() |
| 题目评论 | 对题目进行评论和评论查看 | 1. 用户对题目进行进行评论,吐槽; 2. 查看其他用户评论; 3. 对其他用户评论进行回复; |
Alpha | ![]() |
| 快速做题 | 提供背题模式支持 | 1. 进入背题模式,直接浏览题目答案和答案解析; | Alpha | ![]() |
| 问答社区 | 用户提问和交流 | 1. 用户主动发帖提问,按照科目分类,提供标签支持,进行提问归档; 2. 用户对帖子回答和评论,提供文字和图片入口; 3. 对帖子和回答进行点赞,踩等支持; 4. 按照讨论热度,对优质帖子进行推荐; 5. 按照点赞,对优质回答进行热评排序; |
Beta | |
| 资源共享社区 | 资源分享 | 1. 用户上传资源,进行简介,通过平台审核,进入资源共享社区; 2. 用户资源查看和下载; 3. 用户对资源进行评价和推荐; |
Beta | |
| 考期日历 | 考试倒计时 | 1. 提供用户自定义考试倒计时; 2. 在考试前一月,前一周等时间进行提醒,也可以用户自定义提醒时间; |
Beta | |
| 知识卡片 | 用户通过知识卡片记忆内容 | 1. 正常显示卡片标题和内容 2. 支持用户自定义知识卡片 |
Beta |
五、产品期望
1.真实用户累积期望
针对上述典型用户的分类可以看出,我们的用户有一定连续性,刷题用户在自身能力得到改善之后,可以成为分享用户。在此基础上,可以使用户流失量减小,对于累计的真实用户,整体上会呈现不断增加的趋势。在本学期末中,目标累计的真实用户可以达到500
2.用户日活跃量期望
针对本学期日程以及开发日程安排,Alpha阶段在学期中段,此时用户使用频率较少,我们日活跃量目标定在20人左右;Beta阶段在学期后半段,最终产品会在考期前完成,在Alpha阶段完成后到对应考试完成时这一段时间内,我们用户量总体上呈现上升趋势,并在考试前几天内达到最快增长,目标最大日活跃量为400;考试结束后,用户量会快速下降,最终稳定在一个较低水平直至下一个周期开始,此时我们目标的日活跃量为10左右
3.资源数据累积期望
针对产品的功能实现,我们将积累以下数据来促进产品更新:
- 做题记录:包括题目选项选择率、题目的错误率、题目收藏率等题目相关数据来满足产品的反馈功能和推荐功能
- 评论数据:包括用户评论内容、评论点击率、评论的好评率等可以衡量评论质量的数据来进行优质评论的置顶功能
- 用户反馈:包括BUG反馈、改进意见等。反映产品质量与当前用户意愿走向
4.下载量累积期望
考虑我们产品使用的周期以及周期内的用户黏性,在一个使用周期内,用户不会频繁卸载我们的产品,所以目标下载量总体上略大于积累的真实用户,目标为550
六、数据收集及分析
数据及意义
- 登录用户数:登录应用后至当前时间,至少登录过一次的用户数量
- 日/月活跃量:代表某日或者某月,登录软件的人数。反应固定时间内软件的热度
- 日/月新增量:代表某日或者某月,注册成为用户的数量。新增量属于活跃用户的一部分,反应软件在目标用户群体的知名度
- 日/月留存率:代表某日或者某月,新增量中登录用户数/新增量*100%。顾名思义,留存指的就是“有多少用户留下来了”,反应软件的可持续发展的能力
- 活跃时间段:24H,每个时间段的活跃量统计,反应用户在哪个时间段使用软件最频繁
- 流失用户数:代表截至统计时间,流失用户的总和
准备工作
上述数据统计需要借助数据库。具体而言,用户注册和每一次登录都需要在数据库中增加一条记录,记录对应用户标识和时间,通过查询语句即可导出上述数据
与上述目标的对应关系
- 真实用户数量 = 自产品发布以来的日新增量之和 - 流失用户数
- 用户日活跃量 = 日活跃量
七、可能存在的问题和副作用
- 随着用户日活跃的增大,因为服务器性能的限制,前后端交互的效率会受到影响,影响用户做题体验
- 线上答题与实际答题环境还是有较大差异,需要用户能够在考试时候迅速回到状态
- 直接利用该网站对相关作业进行搜索或用户过度依赖讨论区,缺乏自己的思考
八、更新日志
| 时间 | 更新内容 |
|---|---|
| 2021-04-20 0:01 | 按照班级作业要求完成Alpha-功能规格说明书 |
| 2021-05-19 23:30 | 在#四、系统功能及验收标准部分添加系统架构总览、Alpha实现成果展示,并结合具体实现结果修改部分系统功能 |
Beta-功能规格说明书的更多相关文章
- 【BUAA软工】Visual Lab Online——功能规格说明书
项目 内容 班级:北航2020春软件工程 博客园班级博客 作业:明确和撰写软件的功能规格说明书 功能规格说明书 当前版本:v1.0 修订历史: 版本号 修订时间 修订说明 v1.0 2020/04/0 ...
- BugPhobia进阶篇章:功能规格说明书
0x01 :特别鸣谢 首先特别鸣谢<构建之法>中并没有给出固定化格式的功能规格说明书的样例,因此在此次的说明书中将尽可能用生动形象的例子展示软件交互阐释 因此受到它本身的启发,此次团队功能 ...
- 【Alpha】功能规格说明书
更新说明:从用户需求分析中剥离有关用户场景分析部分,加入功能规格说明书. Github地址:https://github.com/buaase/Phylab-Web/blob/master/docs/ ...
- (Alpha)Let's-典型用户和场景&功能规格说明书
典型用户和场景 Personal/典型用户 名字 阿王 性别.年龄 男.20 职业 学生 收入 无 知识层次和能力 大学学生,善于乐于使用电脑.手机 生活/工作情况 上学 动机.目的.困难 感到大学生 ...
- No.11_功能规格说明书
功能规格说明书 • 基本目标 为用户提供更加便捷和人性化的闹钟提醒服务,以群组为单位规划时间安排与分配,对于个人用户,实现个人的设置闹钟,取消闹钟的操作,这些操作将会上传至数据库,并被同步到所有的客户 ...
- 学霸系统UI部分功能规格说明书
发布人员:软件工程实践小队 发布内容:学霸系统UI部分功能规格说明书 版本:学霸V1.1版本 ◆Part 1:引言 1.1目的 本功能规格说明书的目的在于明确 ...
- 学霸系统PipeLine功能规格说明书
学霸系统PipeLine功能规格说明书共分为以下三部分: 1.产品面向用户群体 2.用户使用说明 3.产品功能具体实现 1.产品面向用户群体 我们这组的项目并不是传统意义上能发布并进行展示的项目,因此 ...
- [V1-Team] WEDO创意论坛功能规格说明书
项目功能规格说明书 版本说明 版本 内容 时间 V1.0 描述总体目标,用户使用场景,界面原型.功能设计及验收 2019.3.28 附Github仓库:WEDO 正文 1.目标 规范指导整个项目设计与 ...
- 功能规格说明书Version2
此功能规格说明书是Week8 功能规格说明书的第二个版本, 版本1地址:http://www.cnblogs.com/Z-XML/p/3407687.html 此功能规格说明书是面向用户的,所以作者将 ...
- [软件工程基础]PhyLab 功能规格说明书
前言 Sigma 团队想要在 PhyLab 上做的增量改进见需求分析.六个功能中只有题库和图文流程需要对界面进行大的改动,剩下的功能在用户看来仅仅是在原有界面上有内容上的扩充,因此不在功能规格说明书的 ...
随机推荐
- noip模拟题7
目录 T1:匹配 T2:回家 思路 上代码: T3:寿司 基本思路: 上代码: T1:匹配 ##思路: 首先,这道题既可以用KMP,也可以用hash 先说KMP,首先要注意的一点是:KMP的n ...
- Mysql - You can't specify target table '表名' for update in FROM clause 错误解决办法
背景 在MySQL中,写SQL语句的时候 ,可能会遇到 You can't specify target table '表名' for update in FROM clause 这样的错误 错误含义 ...
- ubuntu 20.04 发邮件配置
安装sendmail后,发邮件一直没有成功,因此卸载sendmail后,安装heirloom-mailx. # unbuntu 18.04和20.04移除了heirloom-mailx,需要另外配置软 ...
- 《手把手教你》系列技巧篇(二十六)-java+ selenium自动化测试-浏览器操作(详细教程)
1.简介 在Web自动化的操作中,我们通常需要使用一些方法来操作浏览器,今天就来学习一下.这一篇宏哥主要是介绍一下,在自动化测试的时候,我们常见的一些浏览器操作有哪些,宏哥将会一一介绍和讲解. 2.浏 ...
- mysql触发器实时检测一条语句进行备份删除
问题描述:用户有一个这样一个需求,在一张表里会不时出现 "违规" 字样的字段,需要在出现这个字段的时候,把整行的数据删掉.这是个采集任务,如果发现有"违规"字样 ...
- 洛谷P1090——合并果子(贪心)
https://www.luogu.org/problem/show?pid=1090 题目描述 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆.多多决定把所有的果子合 ...
- Java面向对象系列(9)- 方法重写
为什么需要重写? 父类的功能,子类不一定需要,或者不一定满足 场景一 重写都是方法的重写,和属性无关 父类的引用指向了子类 用B类新建了A类的对象,把A赋值给了B,这时候B是A,A又继承了B类,向上转 ...
- javascript 高阶函数 实现 AOP 面向切面编程 Aspect Oriented Programming
AOP的主要作用是吧一些跟核心业务逻辑模块无关的功能 -日志统计, 安全控制, 异常处理- 抽离出来, 再通过"动态织入"的方式掺入业务逻辑模块中. 这里通过扩展Function. ...
- springboot 运行出现错误 Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean.
原因是我将springboot启动类换到了另外一个方法中 出现了一个异常 后来发现因为我换了类但是忘记了换类名所以才报错 @ComponentScan @EnableAutoConfiguration ...
- Pycharm软件学生和老师可申请免费专业版激活码
有一种邮箱,叫做教育邮箱,这东西在这个互联网的世界有很大的优惠及特权,在 Jetbrain 这里, 如果你有教育邮箱(没有教育邮箱怎么办?.edu.cn后缀的邮箱)但很多学生.甚至老师都未必有. 你只 ...



























