项目 | 内容 |
这个作业属于哪个课程 | |
这个作业的要求在哪里 | |
我在这个课程的目标是 | 学习软件工程相关理论,并开发一个自己的软件 |
这个作业在哪个具体方面帮助我实现目标 | 对一个软件进行了深入分析 |
软件案例分析
第一部分:调研评测
我选择调研评测的软件是qq音乐及网易云音乐,设备为手机。其中qq音乐我使用较多,网易云音乐使用较少。
基本功能


qq音乐和网易云音乐的基本功能大致相同。除了正常的歌曲播放功能外,都有歌曲推荐,歌曲排行,歌单推荐,以及直播等功能。
在主界面上两个软件也大致相同。最上方为分类栏和搜索框,中间为主要内容,下方为各种功能切换。不同之处在于网易云音乐的设置在左部侧边栏中,而qq音乐的设置需要从个人主页中进入。
个人主页界面两者也相差不大,有我的歌单,歌曲下载,最近播放,我的好友等等按钮,只是位置略有差别。
主要功能:歌单播放
在听到喜欢的歌之后,用户可以将其加入歌单。同时,用户也可以直接使用已有的歌单,从其他应用中导入歌单,还可以分享自己的歌单。
在播放一个歌单时,用户可以选择顺序播放,单曲循环,或者随机播放。随机播放并非完全随机,而是让每个歌曲播放次数大致相同。用户可以随时暂停,也可以切换到上/下一个歌曲。
其他功能/设置
在设置中,两个软件均有很多人性化设置。例如自动下载,歌词显示,使用流量/wifi时不同的播放设置。虽然这些设置十分人性化,但是并不容易找到。
歌曲排行榜功能中,有各种分类的排行,但是排行算法不明确。但是两个软件都没有播放量/喜欢数的排行。此外,新歌更容易进入排行。
对于直播和社区等额外功能,均能够正常使用。但是根据我在身边的调研,使用这些功能的人并不多,因此我没有深入测评。此外,qq音乐可以开启简化模式,关闭这些额外功能,而网易云音乐不行。
BUG评测
星级 | bug波及范围 |
5 | 致命性系统故障;致命性安全漏洞 |
4 | 严重系统故障;严重安全漏洞;严重影响用户体验 |
3 | 某功能无法使用;一定程度的安全漏洞;较大影响用户体验 |
2 | 部分功能异常;较大影响用户体验 |
1 | 略微影响用户体验 |
BUG#1
软件:qq音乐
测试环境:华为P30手机,qq音乐版本12.0.5
是否可复现:必然复现

BUG描述:在社区-关注中,社区热门一栏显示“加载失败,点击重试”,切换4G和wifi后均出现此BUG。
BUG等级:3
分析:此BUG在不同环境下均可复现,因此不是网络或设备的问题。可能因为数据请求时出现了错误,导致前端没有接收的数据。
未修复原因:不太理解,这么明显的bug,难道是这个功能整个烂尾了?
BUG#2
软件:qq音乐
测试环境:华为P30手机,qq音乐版本12.0.5
是否可复现:特定条件下可复现,复现概率低。
BUG描述:在打开其他应用声音的同时播放qq音乐,偶尔会出现qq音乐经常自动暂停的情况。点击继续播放或者切换歌曲后仍然出现bug。重启qq音乐后解决。
BUG等级:2
分析:有两种原因,可能是网络的问题,网络太慢导致歌曲没有传输过来,只能暂停。也可能是其他应用影响了qq音乐的播放。
未修复原因:bug出现概率低,无法准确判断出bug原因。
总结打分
qq音乐
描述 | 评分(满分 10 分, 良好 6 分, 及格 4 分,聊胜于无 1 分, 很差 -3 分) | |
核心功能 | 核心功能的设计和质量 | 9 |
细节 | 细节方面的表现 | 8 |
用户体验 | 不干扰用户的使用 | 7 |
辅助功能 | 辅助功能比如皮肤 | 5(过多无意义功能) |
差异化功能 | 独特的功能 | 6(没有让人眼前一亮的功能) |
软件的效能 | 占用内存、启动速度等 | 4(软件占用内存过大) |
软件自适应性 | 联网/断网,不同屏幕,不同操作系统的使用 | 8 |
成长性 | 记住用户的选择,适应用户特点 | 8 |
用户控制权 | 系统状态有反馈,等待时间要合适。关键操作有确认提示,有明确的错误信息。 | 9 |
网易云音乐
描述 | 评分(满分 10 分, 良好 6 分, 及格 4 分,聊胜于无 1 分, 很差 -3 分) | |
核心功能 | 核心功能的设计和质量 | 9 |
细节 | 细节方面的表现 | 9 |
用户体验 | 不干扰用户的使用 | 7 |
辅助功能 | 辅助功能比如皮肤 | 3(过多无意义功能无法屏蔽) |
差异化功能 | 独特的功能 | 5(没有让人眼前一亮的功能) |
软件的效能 | 占用内存、启动速度等 | 3(软件占用内存过大) |
软件自适应性 | 联网/断网,不同屏幕,不同操作系统的使用 | 8 |
成长性 | 记住用户的选择,适应用户特点 | 8 |
用户控制权 | 系统状态有反馈,等待时间要合适。关键操作有确认提示,有明确的错误信息。 | 9 |
作为成熟的音乐软件,在功能和用户体验方面都没有太大问题。但是这两款软件随着更新加入了过量的附加功能,显得过于臃肿。
个人建议,音乐软件就没必要搞太多的社交,直播什么的功能了。
第二部分:分析
工作量分析
两款软件的规模大致相同。基本功能实现大概需要六个月,附加功能实现需要六个月或者更长。
当然,这是照着已有的功能再实现一遍的时间,如果要从头设计功能花费的时间更长。
下面是各个模块的工作量估计(以qq音乐为例):
整体UI设计:4周
底层数据库:8周
用户账户管理,个人中心:4周
歌曲播放,收藏,评论,歌单相关:4周
歌曲排行,歌曲推荐等:2周
其他小设置(定时播放等):2周
直播功能:8周
社区功能:8周
音乐馆/听书等其他功能:8周
软件质量分析
两款软件的质量大致相同,很好的实现的基本功能,附加功能质量稍差一些。两款软件在同类产品中属于顶尖水平。
这两款软件都是不断的再更新,去满足用户的需求,不过也有部分功能显得过于累赘。
我的建议:可以在歌曲推荐方面再优化一下,现在的推荐大部分还是基于歌曲类型/歌手,如果能精确到旋律/节奏层面就更好了。
第三部分:建议和规划
下面的还是以qq音乐为例。
市场概况
首先市场有多大?
市场为全球所有没有听力障碍的人。
其次直接的用户有多少?潜在的用户又有多少?
直接用户为近亿听歌的用户,其余均为潜在的用户。
市场现状
目前市场上有什么样的产品了?
现在市场上产品还是以各种类型的音乐播放器为主。例如qq音乐,网易云音乐,酷狗音乐等等。
上述产品的定位、优势与劣势在哪里?
上述产品定位有所重叠,不同的音乐软件在歌曲数量/种类,歌曲音质,和扩展功能有所不同。其中qq音乐和网易云音乐有巨大的用户基础,其余产品用户较少,但是用户黏度高。
上述产品之间呈现什么样的关系,哪些为竞品关系?以及竞争中的各方态势如何?
上述产品之间互相均为竞品关系,因为一个用户不太可能同时使用两种音乐软件。
产品规划
你要在当前软件的基础上设计什么样的新功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用NABCD分析。
我想做一个歌曲共创功能。用户可以在作词,作曲,伴奏,演唱和听众中任意选择角色。在整合完成后发布新的歌曲。
N:用户想听新歌,但是新歌出现的太少了。
A:通过多人共创的方式,快速生成新歌的idea,并加以实现。
B:新歌创作参与人数多,且为并行,效率很高。
C:其他平台可能模仿此方法。
D:在主界面上增加此功能的按钮即可。
如果你是项目经理,可以招聘6个人,并且有4个月的时间,你认为应该如何配置角色(开发,测试,美工等等) 才能在第16周如期发布软件的改进版本,并取得预想中的成绩。
后端开发/测试:2人
前端开发/测试:2人
架构设计:1人
美工:1人
请为你的团队设计16个周期每周的详细规划。
周数 | 任务 |
1 | 需求分析,开发规范确定 |
2 | 学习Git结构,设计后端架构和前端UI |
3 | 用户管理功能/个人中心界面 |
4 | 作词/作曲功能及相应前端功能 |
5 | 伴奏/演唱功能及相应前端功能 |
6 | 创作作品整合/听歌/评论交流功能 |
7 | 其他辅助功能 |
8 | 安全性测试/不同设备类型测试 |
9 | 与原版本进行对接 |
10 | Alpha测试并修复Bug |
11 | Beta测试,修复Bug并听取反馈 |
12 | 空一周,缓冲一下,以应对突发情况 |
13 | 再次开展Beta测试,修复Bug并听取反馈 |
14 | 集成测试、压力测试 |
15 | 灰度部署 |
16 | 全面上线 |