需求分析
1、访问用户
我们团队计划开发一款以学习英语为目的的微信小游戏,为了了解市场反响和用户偏好,我们通过用户调查问卷的方式来进行用户调研。问卷涵盖了各个年龄阶段的用户,包含了现在流行的各种元素,希望让结果更加客观。以下是舍友进行问卷调查,他认为学习英语对未来是很有帮助的,而且他认为如果能以一种不枯燥的方式来学习就更好了,他对连连看表示出了挺大的兴趣。
用户调查问卷链接:
http://1218847.51diaocha.com/manage/questionary/stat/realtime.htm?isNew&id=1494024
用户问卷调查统计:
下图是截止2018/4/15/12:00的问卷填写人数及不同年龄层所占百分比
我们从以下几个重要方面来调查,结果如下:
对微信小游戏的认识
是否有学习的需求
现阶段用户的英语水平
背英语的方法
吸引用户的层面:
用户的接受度
用户喜欢的模式
用户建议
2、需求规格说明书的git链接
https://gitee.com/yangxueying/software_engineering_team_work/tree/master
3、项目的NABCD
1、N(Need 需求)
--简介
这是一款能够边玩游戏边记忆单词的微信小游戏。这款游戏对用户来说容易上手,一玩即会,抓住微信小程序的特点,不用下载,用完即走,同时游戏的形式增加了传统背单词方法所缺少的趣味性,用户可以利用起零散的空闲时间记忆单词。
--用户的烦恼
用户在零碎的时间,比如坐公交、排队等待时,拿着书或者使用背单词APP很难集中注意力,比较枯燥,而且背单词的效率并不高。
--应需求而生
正因为用户的这些烦恼,我们的单词连连看小游戏应时代需求而生了!我们的目的是通过一种潜移默化的方式实现单词的记忆。通过单词连连看小游戏,用户不仅可以消遣空闲时间,还能顺便背背单词。
2、A(Approach,做法)
下面就是分析具体如何做了。我们小组定位的是微信小游戏,所以结合N阶段总结的需求,我们组的微信小游戏要能实现以下几点功能:
1.难度选择
2. 单词学习。
3. 单词连连看。
4. PK模式。
5.单词读音
在介绍上述功能如何实现前,先说明下我们小组采用的原型工具是MockingBot(墨刀)支持在线编辑,团队开发。说这个是因为接下去的分析过程中,我们将采用文字描述配合原型图片来讲解。
下面就讲讲我们小组单词连连看微信小游戏的思路。首先用户开始游戏之前可以选择游戏模式。如果选择PK模式就进行用户匹配,进行一对一PK,用时短者获胜,可以获得奖励。如果选择经典模式,就进入难度选择界面,如下图:
选择难度之后进入单词学习界面,如下图:
用户完成单词学习之后点击start,进入单词连连看界面,如下图:
此时,用户进行游戏。在规定时间内用户消除全部单词块即可获得经验值。
游戏成功用户可以知道玩一局游戏的时间
游戏失败的界面:
3、B(Benefit,好处)
我们抓住微信小程序的特点,用户可以不用下载,用完即走,给用户带来方便,帮助用户充分利用碎片时间,在给用户带来乐趣的同时满足用户学英语背单词的需求。用户可以利用起零散的空闲时间记忆单词,比如坐公交,再比如排队打饭...这样即能达到娱乐放松的目的,又能促进英语单词的识记。
4、C(Competitors,竞争)
在目前市场上,能够高效背单词且知名度很高的APP已经非常多了,在这方面我们短期很难与之进行竞争。而市面上类似的背单词小游戏相较而言还是比较少的,市场潜力较大。我们主要靠通过玩游戏加深单词记忆,增加学习的趣味性,给用户减负,这是我们产品在市场中的竞争优势所在。
5、D(Delivery,推广)
1.我们的产品一开始可以在集大普及,之间不断的完善。
2.通过微信、QQ、微博等社交媒体推送和转发。
4、将NABCD要点组织成一段话
我们的单词连连看小游戏是为了解决大学生背单词枯燥的痛苦, 他们迫切需要一种更轻松背单词的学习方式。但是常规的学习方法却没有很好地解决这些需求。我们有独特的办法,那就是边玩游戏边背单词,寓教于乐。用户可以利用起零散的空闲时间记忆单词,比如坐公交,再比如排队打饭...这样即能达到娱乐放松的目的,又能促进英语单词的识记。市面上类似的背单词小游戏相较而言还是比较少的,我们另辟蹊径,抓住微信小程序的特点,不用下载,用完即走。同时以游戏的形式增加了传统背单词方法所缺少的趣味性,提高了背单词的效率。我们产品主要通过微信、QQ、微博等社交媒体推送和转发,能很快地让大部分用户知道我们的产品,并进一步传播。
视频:
链接:https://pan.baidu.com/s/1fGkmdsXtogXTmFV05XTj9A 密码:6soq
5、项目的杀手功能
游戏与学习相结合,增加学习的趣味性。有PK模式,可以激发用户学习单词的动力。有单词发音功能可以纠正发音,提高听力与口语,拒绝哑巴英语。
原型设计
原型设计用到的工具:墨刀
原型设计的结果
链接:https://modao.cc/workspace/apps/p605B580A7B1523452930702/preview
任务分解WBS
给出团队项目的WBS和团队成员估计各自任务所需时间
功能 | 子功能 | 二级子功能 | 预计花费时间(小时) | 负责成员 |
---|---|---|---|---|
游戏基础功能 | 显示首界面 | 绘制产品主logo及不同难度下的布局 | 10 | 王华俊 |
游戏 | 难度选择(简单、一般、困难)(单词路径处理) | 19 | 杨雪莹 | |
单词学习(单词选择) | 15 | 林楚虹 | ||
结束游戏 | 15 | 林艺如 | ||
消除选中块算法 | 18 | 董美凤 | ||
等级升级(根据经验值) | 18 | 林艺如 | ||
选项 | 控制背景音乐开关 | 18 | 林楚虹 |
|||显示排行榜 |15|杨雪莹|
||帮助|游戏规则 |4|王华俊|
|增加游戏趣味功能 |闪烁|按钮变色 |12|董美凤|
|||获得道具 |待定|待定|
||PK模式(Beta阶段)|匹配|待定|待定|
|||获取经验值|待定|待定|
||道具(Beta阶段)|提示卡| 待定|待定|
|||加时卡| 待定|待定|
||音效|单词读音(Beta阶段)|待定|待定|
编码规范
链接:https://gitee.com/yangxueying/software_engineering_team_work/tree/master
系统设计
1、系统的架构设计
系统架构设计图
2、数据库设计
用户表
数据项 | 数据项含义 | 数据类型 | 允许空 |
---|---|---|---|
Uno(主键) | 用户标识 | char(20) | no |
Uname | 用户昵称 | char(20) | no |
Uexp | 用户经验值 | int | no |
Urank | 用户等级 | int | no |
UtipCard | 用户提示卡数量 | int | no |
UtimeCard | 用户加时卡数量 | int | no |
简单词库表
数据项 | 数据项含义 | 数据类型 | 允许空 |
---|---|---|---|
Snum(主键) | 编号 | int | no |
Sword | 单词 | char(20) | no |
Sword | 中文意思 | char(20) | no |
一般词库表
数据项 | 数据项含义 | 数据类型 | 允许空 |
---|---|---|---|
Cnum(主键) | 编号 | int | no |
Cword | 单词 | char(20) | no |
Cword | 中文意思 | char(20) | no |
困难词库表
数据项 | 数据项含义 | 数据类型 | 允许空 |
---|---|---|---|
Hnum(主键) | 编号 | int | no |
Hword | 单词 | char(20) | no |
Hword | 中文意思 | char(20) | no |
ER图
小结
1、团队的分工及完成情况
组员 | 分工 | 完成情况 |
---|---|---|
林楚虹 | 需求规格说明书,编码规范,个人感想 | 已完成 |
林艺如 | 原型设计,系统设计,个人感想 | 已完成 |
董美凤 | 项目的NABCD,视频制作,编码规范,个人感想 | 已完成 |
杨雪莹 | 项目的NABCD,视频制作,任务分解WBS,个人感想+写博 | 已完成 |
王华俊 | 访问用户,个人感想 | 已完成 |
2、个人的感受
林楚虹
需求分析方面我们选择了用问卷调查的形式进行需求调查,如何设计问卷题目获取用户的需求是一个困难,我们尝试用成员都出几道题目最后进行整合的方法形成问卷,我认为如果能事先讨论方向然后成员围绕这个方向出题在整合效率会更高。在分析调查问卷的时候,我们会得到许多数据,如何从数据里看到深层次的需求也是一个值得思考的点。不过我们第一次做这样的分析,从表面数据来得到需求个人认为也是足够的。这次我编写了《软件需求规格说明书》,开始我们几个人没有详细讨论项目蓝图,所以我编写时总是磕磕绊绊的,当然我们马上发现了这个问题并进行了详细的讨论然后比较完美的编写完说明书。
董美凤
这周我们团队主要完成了需求分析和系统原型设计。在这过程中,大家坐在一起一同讨论整个系统的功能设计,每个人提出各自的想法,从中可以发现当听到其他队员的观点时,不由心中会想:咦~原来这个功能还可以这样设计,这个想法好。通过这样的沟通,相互补充,可以更好地完成任务。但是,经过这一周的完成情况,同时也暴露出了我们团队项目经验不足的弱点,在前期我们并没有很统一深入地一起先去设计整个系统功能架构,只是很浅显地交流了一下整体功能,这导致后来我们在原型设计上出现了一些分歧。在我们大家一同讨论过后,便也顺利地解决了这些问题。总体来说,团员之间有疑问,出现问题,直接提出来,大家一同沟通解决,既解决了问题,也能很好地促进团队之间的合作。
林艺如
这一周我们一起把整个项目的方向思路进行讨论也更加明确了功能和设计流程,根据我们的需求分析以及老师助教们给出的建议也进行了一些修正,每个人也都大致了解自己的任务和要求。说实话,这是我第一次了解到原型设计,也是第一次接触原型设计工具(墨刀),虽然创建原型的过程中遇到一些问题,比如连连看的路径和单词对选择有多种顺序,需要大量的页面来跳转,而且最后完成的也不是十分完美,只能说展示出了我们项目核心的功能,没能把辅助功能完成,但是通过这次原型设计以及团队深入地需求分析,我更加认识到项目的前期工作的重要性,也明白了原型设计与需求分析的关系。还有感受深刻的一点就是,团队合作有疑问或不同的观点要大胆提出来一起沟通讨论,这样才能更加促进项目的进步和完善。
杨雪莹
这次团队作业涉及了很多项目具体问题。我作为组长在这次团队作业有很大的感悟与收获。刚开始把任务分配下去,完成得也很好,大家都为了自己的任务所努力。但是我们在任务开始时没有进行很好的沟通,大家对项目的具体细节存在不理解,可以说不同的成员对项目有不同的理解。就是因为这个原因导致成员在做任务时不是很顺利。后来经过团队成员的开会,大家才统一对项目的具体功能与游戏规则的理解。这次会议大家都提出不同的游戏规则和细节,难免会出现意见不合的情况,很开心的是,大家能经过沟通把彼此的想法都说出来。经过这次经历,我决定在每次开始作业时,要进行一次团队会议,把本次要做的及成员不懂的问题在这次会议解决。这样可以避免成员对自身任务的不理解,提高完成任务的效率。还有这次的视频的剪辑制作,真的是很想说我平时观看那些视频剪辑的up主太厉害了!真的我视频剪辑到眼睛都快瞎了(本来就已经半瞎了。。哭。。),而且还要一直重复不断看,不断听,一帧一帧的剪,真心不容易。这是第一次做,学会了视频剪辑,我觉得没有白费。
王华俊
在产品的构思初期,我们罗列了很多需求,也收集到很多需求,但有些需求是伪需求,有些也不具备实现价值。而我们如果毫无克制地加载功能满足用户,最终也会导致产品失去核心价值。所以我们要科学地做好调查,才能脱颖而出。